components:
  requestBodies:
    BatchOperationRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/BatchOperationRequest'
      description: The batch request
      required: true
    PatchDirectiveArray:
      content:
        application/json:
          schema:
            items:
              $ref: '#/components/schemas/PatchDirective'
            type: array
      description: The patch directives conforming to RFC 6902.
      required: true
    PreviewReceiptRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PreviewReceiptRequest'
      description: The domain_name to use to for record lookup
      required: true
    ProcessGiftInfo:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ProcessGiftInfo'
      description: Payload for the gift
      required: true
    ProcessPledgeInfo:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ProcessPledgeInfo'
      description: Payload for the pledge
      required: true
  schemas:
    Address:
      additionalProperties: false
      description: A complete address
      properties:
        city:
          description: The city of the address
          title: City
          type: string
        country:
          description: The country ISO code
          title: Country
          type: string
        country_name:
          description: The full name of hte country
          title: Country Name
          type: string
        county:
          description: The county
          title: County
          type: string
        latitude:
          format: double
          title: Latitude
          type: number
        line1:
          description: The first line of the address
          title: Line 1
          type: string
        line2:
          description: The second line of the address
          title: Line 2
          type: string
        line3:
          description: The third line of the address
          title: Line 3
          type: string
        longitude:
          format: double
          title: Longitude
          type: number
        postal_code:
          description: The zip/postal code
          title: Postal Code
          type: string
        state:
          description: The state/province of the address
          title: State
          type: string
        time_zone_id:
          title: Time Zone
          type: string
      type: object
    Appeal:
      additionalProperties: false
      properties:
        campaign_id:
          description: The campaign to which this appeal is linked
          title: Campaign
          type: string
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        fundraising_products:
          items:
            additionalProperties: false
            properties:
              fund_id:
                description: The fund
                title: Fund
                type: string
              product_id:
                description: The product
                title: Product
                type: string
            required:
              - fund_id
              - product_id
            type: object
          minItems: 1
          type: array
        goal:
          description: Goal for the appeal
          format: float
          title: Goal
          type: number
        id:
          description: The unique, string identifier of this appeal
          pattern: ^[\w:|-]+$
          title: ID
          type: string
        name:
          description: The name of the appeal
          title: Name
          type: string
        notes:
          description: The notes for the appeal
          title: Notes
          type: string
        override_fundraising_products:
          description: If true, specific products are used for gifts in this campaign
          title: Override Fundraising Products
          type: boolean
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
      required:
        - campaign_id
        - fundraising_products
        - id
        - name
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    AppealSearchParameters:
      additionalProperties: false
      properties:
        date:
          items:
            format: date-time
            type: string
          maxItems: 2
          minItems: 2
          title: Date
          type: array
        goal:
          format: float
          title: Goal
          type: number
        ids:
          description: IDs to search
          items:
            type: string
          title: Ids
          type: array
        name:
          title: Name
          type: string
      type: object
    AppealSearchResults:
      additionalProperties: false
      properties:
        end_date:
          description: The end date of the appeal
          format: date-time
          title: End Date
          type: string
        goal:
          description: The gaol for the appeal
          format: float
          title: Goal
          type: number
        id:
          description: The id
          title: ID
          type: string
        is_active:
          description: Is the appeal active
          title: Is Active
          type: boolean
        name:
          description: The name
          title: Name
          type: string
        start_date:
          description: The start date of the appeal
          format: date-time
          title: Start Date
          type: string
      type: object
    BatchOperationRequest:
      additionalProperties: false
      properties:
        operations:
          items:
            additionalProperties: false
            properties:
              id:
                description: The ID of the record
                oneOf:
                  - x-required: true
                title: ID
                type: string
              object:
                title: Object
                type: object
              operation:
                enum:
                  - create
                  - delete
                  - patch
                  - read
                  - update
                title: Operation
                type: string
              patch_directives:
                items:
                  additionalProperties: false
                  properties:
                    op:
                      description: The operation
                      enum:
                        - add
                        - copy
                        - move
                        - remove
                        - replace
                        - test
                      title: Op
                      type: string
                    path:
                      description: The JSON path
                      title: Path
                      type: string
                    value:
                      title: Value
                      type: string
                  required:
                    - op
                    - path
                  type: object
                maxItems: 100
                minItems: 1
                oneOf:
                  - x-required: true
                type: array
            required:
              - operation
            type: object
          type: array
      type: object
    BatchOperationResponse:
      additionalProperties: false
      properties:
        error_count:
          description: Number of error results
          format: float
          title: Error Count
          type: number
        results:
          items:
            additionalProperties: false
            properties:
              error_message:
                title: Error Message
                type: string
              id:
                description: The ID of the record
                title: ID
                type: string
              object:
                title: Object
                type: object
              operation:
                enum:
                  - create
                  - delete
                  - patch
                  - read
                  - update
                title: Operation
                type: string
              outcome:
                enum:
                  - error
                  - no change
                  - success
                title: Outcome
                type: string
            required:
              - id
              - operation
            type: object
          type: array
        success_count:
          description: Number of successful results
          format: float
          title: Success Count
          type: number
      type: object
    BillingTemplate:
      properties:
        advance_phases:
          description: >-
            When true, training providers should be sent invoices for training
            registrations
          title: Advance Phases
          type: boolean
        description:
          description: A description of the template
          title: Description
          type: string
        fundraising_notice_options:
          properties:
            expiration_date_range_end:
              description: The date to use to filter out which memberships are candidate
              properties:
                number:
                  description: The unit of time
                  format: float
                  minimum: 0
                  title: Number
                  type: number
                position:
                  description: How the unit relates to the reference date
                  enum:
                    - after
                    - before
                    - 'on'
                  title: Position
                  type: string
                relative_to:
                  enum:
                    - the beginning of the month
                    - the beginning of the quarter
                    - the beginning of the week
                    - the beginning of the year
                    - the end of the month
                    - the end of the quarter
                    - the end of the week
                    - the end of the year
                    - the reference date
                  title: Relative To
                  type: string
                unit_of_time:
                  enum:
                    - days
                    - months
                    - weeks
                    - years
                  title: Unit Of Time
                  type: string
              required:
                - position
                - relative_to
              title: Expiration Date Range End
              type: object
            expiration_date_range_start:
              description: The date to use to filter out which memberships are candidate
              properties:
                number:
                  description: The unit of time
                  format: float
                  minimum: 0
                  title: Number
                  type: number
                position:
                  description: How the unit relates to the reference date
                  enum:
                    - after
                    - before
                    - 'on'
                  title: Position
                  type: string
                relative_to:
                  enum:
                    - the beginning of the month
                    - the beginning of the quarter
                    - the beginning of the week
                    - the beginning of the year
                    - the end of the month
                    - the end of the quarter
                    - the end of the week
                    - the end of the year
                    - the reference date
                  title: Relative To
                  type: string
                unit_of_time:
                  enum:
                    - days
                    - months
                    - weeks
                    - years
                  title: Unit Of Time
                  type: string
              required:
                - position
                - relative_to
              title: Expiration Date Range Start
              type: object
            notice_id:
              description: The notice to send the school
              title: Notice
              type: string
            phase_ids:
              items:
                type: string
              minItems: 1
              title: Phases
              type: array
            phase_restriction:
              description: Determines if/how to restrict the programs in this run
              enum:
                - exclude
                - include
                - none
              title: Phase Restriction
              type: string
            program_ids:
              items:
                type: string
              minItems: 1
              title: Programs
              type: array
            program_restriction:
              description: Determines if/how to restrict the programs in this run
              enum:
                - exclude
                - include
                - none
              title: Program Restriction
              type: string
            school_ids:
              items:
                type: string
              minItems: 1
              title: Schools
              type: array
            school_restriction:
              description: Determines if/how to restrict the programs in this run
              enum:
                - exclude
                - include
                - none
              title: School Restriction
              type: string
          required:
            - expiration_date_range_end
            - expiration_date_range_start
            - phase_ids
            - program_ids
            - school_ids
          title: Fundraising Notice Options
          type: object
        id:
          description: The unique, string identifier of this billing template
          pattern: /^[\w|-]+$/
          title: ID
          type: string
        is_active:
          description: Whether or not this billing template is active
          title: Is Active
          type: boolean
        name:
          description: The name of the billing template
          title: Name
          type: string
        notification_email:
          description: Te address to send notifications
          title: Notification Email
          type: string
        phase_advancement_options:
          properties:
            expiration_date_range_end:
              description: The date to use to filter out which memberships are candidate
              properties:
                number:
                  description: The unit of time
                  format: float
                  minimum: 0
                  title: Number
                  type: number
                position:
                  description: How the unit relates to the reference date
                  enum:
                    - after
                    - before
                    - 'on'
                  title: Position
                  type: string
                relative_to:
                  enum:
                    - the beginning of the month
                    - the beginning of the quarter
                    - the beginning of the week
                    - the beginning of the year
                    - the end of the month
                    - the end of the quarter
                    - the end of the week
                    - the end of the year
                    - the reference date
                  title: Relative To
                  type: string
                unit_of_time:
                  enum:
                    - days
                    - months
                    - weeks
                    - years
                  title: Unit Of Time
                  type: string
              required:
                - position
                - relative_to
              title: Expiration Date Range End
              type: object
            expiration_date_range_start:
              description: The date to use to filter out which memberships are candidate
              properties:
                number:
                  description: The unit of time
                  format: float
                  minimum: 0
                  title: Number
                  type: number
                position:
                  description: How the unit relates to the reference date
                  enum:
                    - after
                    - before
                    - 'on'
                  title: Position
                  type: string
                relative_to:
                  enum:
                    - the beginning of the month
                    - the beginning of the quarter
                    - the beginning of the week
                    - the beginning of the year
                    - the end of the month
                    - the end of the quarter
                    - the end of the week
                    - the end of the year
                    - the reference date
                  title: Relative To
                  type: string
                unit_of_time:
                  enum:
                    - days
                    - months
                    - weeks
                    - years
                  title: Unit Of Time
                  type: string
              required:
                - position
                - relative_to
              title: Expiration Date Range Start
              type: object
            notice_id:
              description: The notice to send the school when advancing
              title: Notice
              type: string
            phase_ids:
              items:
                type: string
              minItems: 1
              title: Phases
              type: array
            phase_restriction:
              description: Determines if/how to restrict the programs in this run
              enum:
                - exclude
                - include
                - none
              title: Phase Restriction
              type: string
            program_ids:
              items:
                type: string
              minItems: 1
              title: Programs
              type: array
            program_restriction:
              description: Determines if/how to restrict the programs in this run
              enum:
                - exclude
                - include
                - none
              title: Program Restriction
              type: string
            school_ids:
              items:
                type: string
              minItems: 1
              title: Schools
              type: array
            school_restriction:
              description: Determines if/how to restrict the programs in this run
              enum:
                - exclude
                - include
                - none
              title: School Restriction
              type: string
          required:
            - expiration_date_range_end
            - expiration_date_range_start
            - phase_ids
            - program_ids
            - school_ids
          title: Phase Advancement Options
          type: object
        send_fundraising_notices:
          description: If set, this billing run will perform phase advancements
          title: Send Fundraising Notices
          type: boolean
        send_team_notices:
          description: If set, this billing run will perform phase advancements
          title: Send Team Notices
          type: boolean
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        team_notice_options:
          properties:
            phase_ids:
              items:
                type: string
              minItems: 1
              title: Phases
              type: array
            phase_restriction:
              description: Determines if/how to restrict the programs in this run
              enum:
                - exclude
                - include
                - none
              title: Phase Restriction
              type: string
            program_ids:
              items:
                type: string
              minItems: 1
              title: Programs
              type: array
            program_restriction:
              description: Determines if/how to restrict the programs in this run
              enum:
                - exclude
                - include
                - none
              title: Program Restriction
              type: string
            school_ids:
              items:
                type: string
              minItems: 1
              title: Schools
              type: array
            school_restriction:
              description: Determines if/how to restrict the programs in this run
              enum:
                - exclude
                - include
                - none
              title: School Restriction
              type: string
            team_notice_id:
              description: The notice to send the school
              title: Team Notice
              type: string
            visit_start_date_range_end:
              description: The date to use to filter out which visits to use
              format: date
              properties:
                number:
                  description: The unit of time
                  format: float
                  minimum: 0
                  title: Number
                  type: number
                position:
                  description: How the unit relates to the reference date
                  enum:
                    - after
                    - before
                    - 'on'
                  title: Position
                  type: string
                relative_to:
                  enum:
                    - the beginning of the month
                    - the beginning of the quarter
                    - the beginning of the week
                    - the beginning of the year
                    - the end of the month
                    - the end of the quarter
                    - the end of the week
                    - the end of the year
                    - the reference date
                  title: Relative To
                  type: string
                unit_of_time:
                  enum:
                    - days
                    - months
                    - weeks
                    - years
                  title: Unit Of Time
                  type: string
              required:
                - position
                - relative_to
              title: Visit Start Date Range End
              type: object
            visit_start_date_range_start:
              description: The date to use to filter out which visits to use
              format: date
              properties:
                number:
                  description: The unit of time
                  format: float
                  minimum: 0
                  title: Number
                  type: number
                position:
                  description: How the unit relates to the reference date
                  enum:
                    - after
                    - before
                    - 'on'
                  title: Position
                  type: string
                relative_to:
                  enum:
                    - the beginning of the month
                    - the beginning of the quarter
                    - the beginning of the week
                    - the beginning of the year
                    - the end of the month
                    - the end of the quarter
                    - the end of the week
                    - the end of the year
                    - the reference date
                  title: Relative To
                  type: string
                unit_of_time:
                  enum:
                    - days
                    - months
                    - weeks
                    - years
                  title: Unit Of Time
                  type: string
              required:
                - position
                - relative_to
              title: Visit Start Date Range Start
              type: object
            visit_type_ids:
              items:
                type: string
              minItems: 1
              title: Visit Types
              type: array
            visit_type_restriction:
              description: Determines if/how to restrict the visit_types in this run
              enum:
                - exclude
                - include
                - none
              title: Visit Type Restriction
              type: string
          required:
            - phase_ids
            - program_ids
            - school_ids
            - visit_start_date_range_end
            - visit_start_date_range_start
            - visit_type_ids
          title: Team Notice Options
          type: object
      required:
        - fundraising_notice_options
        - id
        - name
        - phase_advancement_options
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
        - team_notice_options
      type: object
    Campaign:
      additionalProperties: false
      properties:
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        end_date:
          description: The close date for the campaign
          format: date-time
          title: End Date
          type: string
        fundraising_products:
          items:
            additionalProperties: false
            properties:
              fund_id:
                description: The fund
                title: Fund
                type: string
              product_id:
                description: The product
                title: Product
                type: string
            required:
              - fund_id
              - product_id
            type: object
          minItems: 1
          type: array
        goal:
          description: The goal for the campaign
          format: float
          title: Goal
          type: number
        id:
          description: The unique, string identifier of this campaign
          pattern: ^[\w:|-]+$
          title: ID
          type: string
        image_uri:
          description: An image for the campaign
          title: Image Uri
          type: string
        is_active:
          description: Whether or not this campaign is active
          title: Is Active
          type: boolean
        name:
          description: The name of the campaign
          title: Name
          type: string
        notes:
          description: The notes for the campaign
          title: Notes
          type: string
        override_fundraising_products:
          description: If true, specific products are used for gifts in this campaign
          title: Override Fundraising Products
          type: boolean
        start_date:
          description: The open date for the campaign
          format: date-time
          title: Start Date
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
      required:
        - fundraising_products
        - id
        - name
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    CampaignSearchParameters:
      additionalProperties: false
      properties:
        end_date:
          title: End Date
          type: string
        ids:
          description: IDs to search
          items:
            type: string
          title: Ids
          type: array
        name:
          title: Name
          type: string
        start_date:
          title: Start Date
          type: string
      type: object
    CampaignSearchResults:
      additionalProperties: false
      properties:
        end_date:
          description: The end date
          title: End Date
          type: string
        goal:
          description: The campaign goal
          title: Goal
          type: string
        id:
          description: The id
          title: ID
          type: string
        is_active:
          description: Is this campaign active
          title: Is Active
          type: boolean
        name:
          description: The name
          title: Name
          type: string
        notes:
          description: The internal notes on the campaign
          title: Notes
          type: string
        start_date:
          description: The start date
          title: Start Date
          type: string
      type: object
    CustomFieldValue:
      additionalProperties: false
      properties:
        boolean_value:
          description: The boolean value
          title: Boolean Value
          type: boolean
        custom_field_id:
          description: The unique identifier of the custom field
          title: Custom Field
          type: string
        file_url_value:
          description: The pointer to a file value
          title: File Url Value
          type: string
        list_value:
          description: The list value
          items:
            type: string
          title: List Value
          type: array
        numeric_value:
          description: The numeric value
          format: float
          title: Numeric Value
          type: number
        string_value:
          description: The string value of the custom field
          title: String Value
          type: string
        table_value:
          description: A list of objects (a table)
          items:
            additionalProperties: false
            properties: {}
            type: object
          type: array
      type: object
    Donor:
      additionalProperties: false
      properties:
        amount_of_largest_gift:
          format: float
          title: Amount Of Largest Gift
          type: number
        anonymous:
          description: Set if this donor has requested anonymity
          title: Anonymous
          type: boolean
        city:
          description: The member city
          title: City
          type: string
        contact_id:
          description: The contact for this donor
          title: Contact
          type: string
        country:
          description: The member country
          title: Country
          type: string
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        date_of_last_gift:
          description: The date the last gift was given
          title: Date Of Last Gift
          type: string
        donor_club_history:
          items:
            additionalProperties: false
            properties:
              donor_club_id:
                description: The historical donor club (or null if none)
                title: Donor Club
                type: string
              end_date:
                title: End Date
                type: string
              start_date:
                title: Start Date
                type: string
            type: object
          type: array
        donor_club_id:
          description: The donor level
          title: Donor Club
          type: string
        email_address:
          description: The member's email address
          title: Email Address
          type: string
        first_name:
          description: The member's first name
          title: First Name
          type: string
        id:
          description: The unique, string identifier of this donor
          pattern: ^[\w-|:]+$
          title: ID
          type: string
        job_title:
          description: The member job title
          title: Job Title
          type: string
        last_name:
          description: The member's last name
          title: Last Name
          type: string
        name:
          description: The member's name
          title: Name
          type: string
        notes:
          description: Notes on the donor
          title: Notes
          type: string
        organization_id:
          description: The organization for this donor
          title: Organization
          type: string
        pledge_balance:
          description: Outstanding balance on pledges
          format: float
          title: Pledge Balance
          type: number
        state:
          description: The state
          title: State
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        total_amount_of_gifts:
          description: Total amount/value of gifts given
          format: float
          title: Total Amount Of Gifts
          type: number
        total_number_of_gifts:
          description: 'Total # of gifts given'
          format: float
          title: Total Number Of Gifts
          type: number
        type:
          description: The donor type
          enum:
            - contact
            - organization
          title: Type
          type: string
      required:
        - contact_id
        - id
        - name
        - organization_id
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
        - type
      type: object
    DonorClub:
      additionalProperties: false
      properties:
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        display_order:
          description: The display order of this club
          format: float
          title: Display Order
          type: number
        id:
          description: The unique, string identifier of this donor club
          pattern: ^[\w:|-]+$
          title: ID
          type: string
        is_active:
          description: Whether or not this donor club is active
          title: Is Active
          type: boolean
        name:
          description: The name of the donor club
          title: Name
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
      required:
        - id
        - name
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    DonorLevel:
      properties:
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        display_order:
          description: The order in which to display the field
          title: Display Order
          type: string
        id:
          description: The unique, string identifier of this donor level
          pattern: /^[\w:|-]+$/
          title: ID
          type: string
        name:
          description: The name of the donor level
          title: Name
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
      required:
        - id
        - name
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    DonorSearchParameters:
      additionalProperties: false
      properties:
        city:
          description: City to search
          title: City
          type: string
        contact_id:
          items:
            type: string
          title: Contact
          type: array
        email_address:
          title: Email Address
          type: string
        first_name:
          title: First Name
          type: string
        ids:
          description: IDs to search
          items:
            type: string
          title: Ids
          type: array
        job_title:
          title: Job Title
          type: string
        last_name:
          title: Last Name
          type: string
        nickname:
          title: Nickname
          type: string
        organization_id:
          items:
            type: string
          title: Organization
          type: array
        state:
          description: The state
          title: State
          type: string
        type:
          title: Type
          type: string
      type: object
    DonorSearchResults:
      additionalProperties: false
      properties:
        city:
          description: City to search
          title: City
          type: string
        contact_id:
          description: The contact of the donor
          title: Contact
          type: string
        domain_name:
          description: The domain name
          title: Domain Name
          type: string
        id:
          description: The id
          title: ID
          type: string
        name:
          description: The name
          title: Name
          type: string
        organization:
          description: The organization of the donor
          title: Organization
          type: string
        state:
          description: The state
          title: State
          type: string
        type:
          description: 'The type of the donor: contact or organization'
          title: Type
          type: string
      type: object
    DonorStatement:
      properties:
        contact_id:
          description: The contact for this donor
          title: Contact
          type: string
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        date:
          description: The date/time of the donation
          format: date-time
          title: Date
          type: string
        donor_id:
          description: The id for the donor
          title: Donor
          type: string
        donor_type:
          description: The donor type
          enum:
            - contact
            - organization
          title: Donor Type
          type: string
        id:
          description: The unique, string identifier of this donor statement
          pattern: /^[\w:|-]+$/
          title: ID
          type: string
        name:
          description: The name of the donor statement
          title: Name
          type: string
        organization_id:
          description: The organization for this donor
          title: Organization
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        uri:
          title: Uri
          type: string
      required:
        - contact_id
        - date
        - donor_id
        - donor_type
        - id
        - name
        - organization_id
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
        - uri
      type: object
    DonorStatementTemplate:
      properties:
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        email:
          description: The email to send
          properties:
            bcc:
              description: Anyone that should be bcc'ed on the email
              title: Bcc
              type: string
            body:
              description: The email body
              title: Body
              type: string
            cc:
              description: Anyone that should be cc'ed on the email
              title: Cc
              type: string
            from:
              description: From email address
              title: From
              type: string
            from_name:
              description: From name
              title: From Name
              type: string
            reply_to:
              description: The reply to
              title: Reply To
              type: string
            subject:
              description: The email subject
              title: Subject
              type: string
          required:
            - body
            - subject
          title: Email
          type: object
        id:
          description: The unique, string identifier of this donor statement template
          pattern: /^[\w:|-]+$/
          title: ID
          type: string
        name:
          description: The name of the donor statement template
          title: Name
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        template:
          description: The template of the Donor Statement
          title: Template
          type: string
      required:
        - email
        - id
        - name
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
        - template
      type: object
    Fund:
      additionalProperties: false
      properties:
        annual_contribution_limit:
          format: float
          minimum: 0
          title: Annual Contribution Limit
          type: number
        business_unit_id:
          description: The business unit to which the fund belongs
          title: Business Unit
          type: string
        category_id:
          description: The associated category for the fund
          title: Category
          type: string
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        display_order:
          description: The display order fund
          format: float
          title: Display Order
          type: number
        enable_annual_contribution_limits:
          description: >-
            If true, this fund has a limit on how much can be given to it in a
            given year
          title: Enable Annual Contribution Limits
          type: boolean
        hide_from_portal:
          description: Should this be hidden in the portal
          title: Hide From Portal
          type: boolean
        id:
          description: The unique, string identifier of this fund
          pattern: ^[\w:|-]+$
          title: ID
          type: string
        is_active:
          description: Whether or not this fund is active
          title: Is Active
          type: boolean
        name:
          description: The name of the fund
          title: Name
          type: string
        restricted:
          description: Whether or not this is a restricted fund
          title: Restricted
          type: boolean
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
      required:
        - annual_contribution_limit
        - business_unit_id
        - category_id
        - id
        - name
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    FundCategory:
      additionalProperties: false
      properties:
        display_order:
          description: Display order of the categories
          format: float
          title: Display Order
          type: number
        id:
          description: The unique, string identifier of this fund category
          pattern: ^[\w:|-]+$
          title: ID
          type: string
        is_active:
          description: Whether or not this fund category is active
          title: Is Active
          type: boolean
        name:
          description: The name of the fund category
          title: Name
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
      required:
        - id
        - name
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    Gift:
      additionalProperties: false
      properties:
        amount:
          description: Gift amount
          format: float
          title: Amount
          type: number
        amount_allocated_to_primary_fund:
          description: >-
            When gift is split, this is the amount that is allocated to the
            primary fund
          format: float
          title: Amount Allocated To Primary Fund
          type: number
        amount_allocated_to_splits:
          description: When gift is split, this is the amount that is allocated to splits
          format: float
          title: Amount Allocated To Splits
          type: number
        anonymous:
          description: Anonymous
          title: Anonymous
          type: boolean
        appeal_id:
          description: The id for the appeal associated with the gift
          title: Appeal
          type: string
        campaign_id:
          description: The id for the campaign associated with the gift
          title: Campaign
          type: string
        contact_id:
          description: The rolodex contact id for the gift giver
          title: Contact
          type: string
        cover_transaction_costs:
          description: If selected, the donor covers the transaction fees
          title: Cover Transaction Costs
          type: boolean
        currency_code:
          description: The currency code of the gift
          title: Currency Code
          type: string
        currency_symbol:
          description: Currency
          title: Currency Symbol
          type: string
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        date:
          description: The creation date for the gift
          title: Date
          type: string
        details:
          description: Any details about the gift
          title: Details
          type: string
        donor_id:
          description: The donor record associated with this gift
          title: Donor
          type: string
        donor_type:
          description: The donor type for the gift
          enum:
            - contact
            - organization
          title: Donor Type
          type: string
        fund_id:
          description: The id for the fund associated with the gift
          title: Fund
          type: string
        giving_process_id:
          description: The process of that led to the gift
          title: Giving Process
          type: string
        has_soft_credits:
          description: If true, this gift has soft credits to others
          title: Has Soft Credits
          type: boolean
        has_splits:
          description: If true, this gift is split into different funds
          title: Has Splits
          type: boolean
        id:
          description: The unique, string identifier of this gift
          pattern: ^[\w:|-]+$
          title: ID
          type: string
        make_recurring:
          description: Whether to make this a recurring gift
          title: Make Recurring
          type: boolean
        master_gift_id:
          description: If this gift is linked to another, it is here
          title: Master Gift
          type: string
        notes:
          description: Notes about the gift
          title: Notes
          type: string
        number:
          description: The gift number
          format: float
          title: Number
          type: number
        order_id:
          description: The id for the order associated with the gift
          title: Order
          type: string
        order_line_item_id:
          description: The id for the order line item associated with the gift
          title: Order Line Item
          type: string
        organization_id:
          description: The organization id associated with this gift
          title: Organization
          type: string
        payment_id:
          description: The payment that generated this gift
          title: Payment
          type: string
        planned_gift_info:
          additionalProperties: false
          description: Information about the gift if type is planned
          properties:
            anticipated_date:
              description: The creation date for the gift
              format: date-time
              title: Anticipated Date
              type: string
          required:
            - anticipated_date
          title: Planned Gift Info
          type: object
        pledge_id:
          description: The pledge associated with this gift
          title: Pledge
          type: string
        premium_assignment:
          enum:
            - assigned
            - declined by donor
            - not applicable
          title: Premium Assignment
          type: string
        premium_fair_market_value:
          description: The amount of any premiums associated with the gift
          format: float
          title: Premium Fair Market Value
          type: number
        premium_id:
          description: If the user has selected a premium it is here
          title: Premium
          type: string
        recurring_frequency:
          enum:
            - monthly
            - quarterly
            - yearly
          title: Recurring Frequency
          type: string
        recurring_gift_end_date:
          description: optional end date for gift
          title: Recurring Gift End Date
          type: string
        recurring_gift_id:
          description: The id for the recurring gift associated with this gift
          title: Recurring Gift
          type: string
        refund_id:
          description: The payment that generated this gift
          title: Refund
          type: string
        shipping_address:
          $ref: '#/components/schemas/Address'
        soft_credits:
          items:
            additionalProperties: false
            properties:
              amount:
                description: The amount of soft credit that the person should receive
                format: float
                title: Amount
                type: number
              contact_id:
                oneOf:
                  - x-required: true
                title: Contact
                type: string
              donor_type:
                enum:
                  - contact
                  - organization
                title: Donor Type
                type: string
              fund_id:
                description: The fund to which this credit is allocated
                title: Fund
                type: string
              organization_id:
                oneOf:
                  - x-required: true
                title: Organization
                type: string
              percentage:
                description: The percentage to attribute gifts
                format: float
                maximum: 100
                minimum: 0
                title: Percentage
                type: number
              reason:
                enum:
                  - matching
                  - other
                  - relationship
                  - tribute
                title: Reason
                type: string
            required:
              - amount
              - fund_id
              - percentage
              - reason
            type: object
          minItems: 1
          type: array
        splits:
          description: An array of fund allocations for this gift
          items:
            additionalProperties: false
            properties:
              amount:
                description: The amount for this allocation of the gift
                format: float
                title: Amount
                type: number
              fund_id:
                description: The id for the fund associated with the gift allocation
                title: Fund
                type: string
            required:
              - amount
              - fund_id
            type: object
          type: array
        stock_gift_info:
          additionalProperties: false
          description: Information about the gift if type is a stock
          properties:
            number_of_shares:
              description: The number of shares of the stock gift
              format: float
              title: Number Of Shares
              type: number
            stock_symbol:
              description: The stock symbol of the stock gift
              title: Stock Symbol
              type: string
          required:
            - number_of_shares
            - stock_symbol
          title: Stock Gift Info
          type: object
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        tax_deductible_amount:
          description: The amount of the gift less any premiums
          format: float
          title: Tax Deductible Amount
          type: number
        tribute_gift:
          description: Whether or not this is a tribute gift
          title: Tribute Gift
          type: boolean
        tribute_gift_info:
          additionalProperties: false
          properties:
            address:
              $ref: '#/components/schemas/Address'
            contact_id:
              description: The optional linked contact
              title: Contact
              type: string
            details:
              description: Additional details
              title: Details
              type: string
            email_address:
              format: email
              oneOf:
                - x-required: true
              title: Email Address
              type: string
            inform_honoree:
              description: If true, the honoree is informed about the gift
              title: Inform Honoree
              type: boolean
            inform_honoree_by:
              enum:
                - email
                - mail
              oneOf:
                - x-required: true
              title: Inform Honoree By
              type: string
            message:
              description: Message to send when notifying
              oneOf:
                - x-required: true
              title: Message
              type: string
            name:
              description: The name
              title: Name
              type: string
            type:
              enum:
                - in honor of
                - in memory of
              title: Type
              type: string
          required:
            - name
            - type
          title: Tribute Gift Info
          type: object
        type:
          description: The type of gift
          enum:
            - cash
            - in kind
            - matching
            - planned
            - pledge payment
            - pledge payment reversal
            - stock
          title: Type
          type: string
      required:
        - amount
        - amount_allocated_to_primary_fund
        - amount_allocated_to_splits
        - contact_id
        - donor_id
        - donor_type
        - fund_id
        - id
        - master_gift_id
        - organization_id
        - payment_id
        - planned_gift_info
        - pledge_id
        - refund_id
        - soft_credits
        - stock_gift_info
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
        - tax_deductible_amount
        - type
      type: object
    GiftNotice:
      properties:
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        email:
          description: The email to send
          properties:
            bcc:
              description: Anyone that should be bcc'ed on the email
              title: Bcc
              type: string
            body:
              description: The email body
              title: Body
              type: string
            cc:
              description: Anyone that should be cc'ed on the email
              title: Cc
              type: string
            from:
              description: From email address
              title: From
              type: string
            from_name:
              description: From name
              title: From Name
              type: string
            reply_to:
              description: The reply to
              title: Reply To
              type: string
            subject:
              description: The email subject
              title: Subject
              type: string
          required:
            - body
            - subject
          title: Email
          type: object
        id:
          description: The unique, string identifier of this gift notice
          pattern: /^[\w:|-]+$/
          title: ID
          type: string
        name:
          description: The name of the gift notice
          title: Name
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
      required:
        - email
        - id
        - name
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    GiftPayload:
      additionalProperties: false
      properties:
        amount:
          description: Gift amount
          format: float
          title: Amount
          type: number
        anonymous:
          description: Anonymous
          title: Anonymous
          type: boolean
        appeal_id:
          description: The id for the appeal associated with the gift
          title: Appeal
          type: string
        campaign_id:
          description: The id for the campaign associated with the gift
          title: Campaign
          type: string
        contact_id:
          description: The rolodex contact id for the gift giver
          title: Contact
          type: string
        cover_transaction_costs:
          description: If selected, the donor covers the transaction fees
          title: Cover Transaction Costs
          type: boolean
        currency_code:
          description: The currency code of the gift
          title: Currency Code
          type: string
        currency_symbol:
          description: Currency
          title: Currency Symbol
          type: string
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        donor_type:
          description: The donor type for the gift
          enum:
            - contact
            - organization
          title: Donor Type
          type: string
        fund_id:
          description: The id for the fund associated with the gift
          title: Fund
          type: string
        giving_process_id:
          description: The process of that led to the gift
          title: Giving Process
          type: string
        has_splits:
          description: If true, this gift is split into different funds
          title: Has Splits
          type: boolean
        make_recurring:
          description: Whether to make this a recurring gift
          title: Make Recurring
          type: boolean
        notes:
          description: Notes about the gift
          title: Notes
          type: string
        organization_id:
          description: The organization id associated with this gift
          title: Organization
          type: string
        premium_assignment:
          enum:
            - assigned
            - declined by donor
            - not applicable
          title: Premium Assignment
          type: string
        premium_fair_market_value:
          description: The amount of any premiums associated with the gift
          format: float
          title: Premium Fair Market Value
          type: number
        premium_id:
          description: If the user has selected a premium it is here
          title: Premium
          type: string
        recurring_frequency:
          enum:
            - monthly
            - quarterly
            - yearly
          title: Recurring Frequency
          type: string
        recurring_gift_end_date:
          description: optional end date for gift
          title: Recurring Gift End Date
          type: string
        shipping_address:
          $ref: '#/components/schemas/Address'
        splits:
          description: An array of fund allocations for this gift
          items:
            additionalProperties: false
            properties:
              amount:
                description: The amount for this allocation of the gift
                format: float
                title: Amount
                type: number
              fund_id:
                description: The id for the fund associated with the gift allocation
                title: Fund
                type: string
            required:
              - amount
              - fund_id
            type: object
          type: array
        tribute_gift:
          description: Whether or not this is a tribute gift
          title: Tribute Gift
          type: boolean
        tribute_gift_info:
          additionalProperties: false
          properties:
            address:
              $ref: '#/components/schemas/Address'
            contact_id:
              description: The optional linked contact
              title: Contact
              type: string
            details:
              description: Additional details
              title: Details
              type: string
            email_address:
              format: email
              oneOf:
                - x-required: true
              title: Email Address
              type: string
            inform_honoree:
              description: If true, the honoree is informed about the gift
              title: Inform Honoree
              type: boolean
            inform_honoree_by:
              enum:
                - email
                - mail
              oneOf:
                - x-required: true
              title: Inform Honoree By
              type: string
            message:
              description: Message to send when notifying
              oneOf:
                - x-required: true
              title: Message
              type: string
            name:
              description: The name
              title: Name
              type: string
            type:
              enum:
                - in honor of
                - in memory of
              title: Type
              type: string
          required:
            - name
            - type
          title: Tribute Gift Info
          type: object
      required:
        - amount
        - contact_id
        - donor_type
        - fund_id
        - organization_id
      type: object
    GiftSearchParameters:
      additionalProperties: false
      properties:
        appeal_id:
          description: Appeal ids to search
          items:
            type: string
          title: Appeal
          type: array
        campaign_id:
          description: Campaign ids to search
          items:
            type: string
          title: Campaign
          type: array
        contact_id:
          description: Contact ids for the donor
          items:
            type: string
          title: Contact
          type: array
        date:
          items:
            format: date-time
            type: string
          maxItems: 2
          minItems: 2
          title: Date
          type: array
        fund_id:
          description: Fund ids to search
          items:
            type: string
          title: Fund
          type: array
        ids:
          description: IDs to search
          items:
            type: string
          title: Ids
          type: array
        master_gift_id:
          description: Parent gift ids to search
          items:
            type: string
          title: Master Gift
          type: array
        order_id:
          description: Order ids to search
          items:
            type: string
          title: Order
          type: array
        organization_id:
          description: Organization ids for the donor
          items:
            type: string
          title: Organization
          type: array
        pledge_id:
          description: Pledge ids to search
          items:
            type: string
          title: Pledge
          type: array
        recurring_gift_id:
          description: Recurring gift ids to search
          items:
            type: string
          title: Recurring Gift
          type: array
        type:
          description: Types of the gifts
          items:
            type: string
          title: Type
          type: array
      type: object
    GiftSearchResults:
      additionalProperties: false
      properties:
        appeal_id:
          description: Appeal id for the gift
          title: Appeal
          type: string
        campaign_id:
          description: Campaign id for the gift
          title: Campaign
          type: string
        contact_id:
          description: Contact ids for the donor
          title: Contact
          type: string
        date:
          title: Date
          type: string
        fund_id:
          description: Fund id for the gift
          title: Fund
          type: string
        id:
          description: ID of the gift
          title: ID
          type: string
        master_gift_id:
          description: Parent gift id for the gift
          title: Master Gift
          type: string
        order_id:
          description: Order id for the gift
          title: Order
          type: string
        organization_id:
          description: Organization ids for the donor
          title: Organization
          type: string
        pledge_id:
          description: Pledge id for the gift
          title: Pledge
          type: string
        recurring_gift_id:
          description: Recurring gift id for the gift
          title: Recurring Gift
          type: string
        type:
          description: Types of the gifts
          title: Type
          type: string
      type: object
    GivingProcess:
      additionalProperties: false
      properties:
        acknowledgement_settings:
          additionalProperties: false
          properties:
            checkbox_text:
              description: The value to show on the textbox label
              title: Checkbox Text
              type: string
            html:
              description: HTML to show
              title: Html
              type: string
          required:
            - checkbox_text
          title: Acknowledgement Settings
          type: object
        allow_anonymous_gifts:
          description: If true, anonymous gifts are allowed
          title: Allow Anonymous Gifts
          type: boolean
        allow_pledges:
          description: Whether pledges are allowed in this process
          title: Allow Pledges
          type: boolean
        allow_recurring_gifts:
          description: Whether recurring gifts are allowed in this process
          title: Allow Recurring Gifts
          type: boolean
        allow_tribute_gifts:
          description: If set, donors are able to donor in honor of/in memory of
          title: Allow Tribute Gifts
          type: boolean
        appeal_id:
          description: The appeal to which gifts given in this process should be associated
          title: Appeal
          type: string
        campaign_id:
          description: >-
            The campaign to which gifts given in this process should be
            associated
          title: Campaign
          type: string
        checkout_settings:
          additionalProperties: false
          properties:
            allow_customer_to_choose_installment_plan:
              description: If true, the customer can choose their installment plan
              title: Allow Customer To Choose Installment Plan
              type: boolean
            bank_account_id:
              description: >-
                The default bank account that the store should use to receive
                payments
              title: Bank Account
              type: string
            bill_my_organization_options:
              additionalProperties: false
              properties:
                billing_address:
                  enum:
                    - do not show
                    - optional
                    - required
                  title: Billing Address
                  type: string
                purchase_order_number:
                  enum:
                    - do not show
                    - optional
                    - required
                  title: Purchase Order Number
                  type: string
                reference_number:
                  description: 'The reference #'
                  title: Reference Number
                  type: string
              title: Bill My Organization Options
              type: object
            bill_my_parent_organization_options:
              additionalProperties: false
              properties:
                billing_address:
                  enum:
                    - do not show
                    - optional
                    - required
                  title: Billing Address
                  type: string
                purchase_order_number:
                  enum:
                    - do not show
                    - optional
                    - required
                  title: Purchase Order Number
                  type: string
                reference_number:
                  description: 'The reference #'
                  title: Reference Number
                  type: string
              title: Bill My Parent Organization Options
              type: object
            business_unit_id:
              description: The business unit of the store
              title: Business Unit
              type: string
            cancellation_fee_product_id:
              description: The ID of the product used for cancellation fees
              title: Cancellation Fee Product
              type: string
            checkout_donation_options:
              additionalProperties: false
              oneOf:
                - x-required: true
              properties:
                simple_checkout_donation_options:
                  additionalProperties: false
                  oneOf:
                    - x-required: true
                  properties:
                    allow_user_to_specify_custom_amount:
                      description: If set, the user can specify their own custom donation
                      title: Allow User To Specify Custom Amount
                      type: boolean
                    donation_ask_text:
                      description: The text shown to the user when making the donation
                      title: Donation Ask Text
                      type: string
                    donation_denominations:
                      items:
                        format: double
                        type: number
                      title: Donation Denominations
                      type: array
                    donation_information:
                      description: Additional information about the donation
                      title: Donation Information
                      type: string
                    donation_product_id:
                      description: The misc product that should be used
                      title: Donation Product
                      type: string
                    override_donation_denominations:
                      description: >-
                        If set, donation denominations are specified here and
                        the defaults are not used
                      title: Override Donation Denominations
                      type: boolean
                    suggested_donation:
                      description: A suggested donation
                      format: double
                      title: Suggested Donation
                      type: number
                  required:
                    - donation_product_id
                  title: Simple Checkout Donation Options
                  type: object
                type:
                  enum:
                    - simple
                  title: Type
                  type: string
              title: Checkout Donation Options
              type: object
            credit_card_minimum_range_end:
              description: If set, the maximum amount for which credit cards can be taken
              format: float
              title: Credit Card Minimum Range End
              type: number
            credit_card_minimum_range_start:
              description: If set, the minimum amount for which credit cards can be taken
              format: float
              title: Credit Card Minimum Range Start
              type: number
            credit_card_mode:
              description: Determines whether or not credit cards are accepted
              enum:
                - disabled
                - enabled
                - range
              title: Credit Card Mode
              type: string
            credit_card_processing_fee_mode:
              description: Determines how credit card processing fees should be handled
              enum:
                - charge
                - do not charge
                - prompt user
              title: Credit Card Processing Fee Mode
              type: string
            credit_card_processing_fee_options:
              additionalProperties: false
              oneOf:
                - x-required: true
              properties:
                fee_percentage:
                  description: 'The fee percentage to charge for credit card processing '
                  format: float
                  title: Fee Percentage
                  type: number
                maximum_fee:
                  description: >-
                    The maximum amount to charge. If the fee comes out to be
                    MORE than this, than this amount will be charged
                  format: float
                  title: Maximum Fee
                  type: number
                minimum_fee:
                  description: >-
                    The minimum amount to charge. If the fee comes out to be
                    less than this, than this amount will be charged
                  format: float
                  title: Minimum Fee
                  type: number
                product_id:
                  description: The misc product to use for the credit card processing
                  title: Product
                  type: string
                prompt_sub_text:
                  description: >-
                    Additional text that is shown to the user when asking if
                    they want to pay for credit card processing fees. If not set
                    a default will be used
                  title: Prompt Sub Text
                  type: string
                prompt_text:
                  description: >-
                    The checkbox text to show the user when asking if they want
                    to pay for credit card processing fees. If not set a default
                    will be used
                  title: Prompt Text
                  type: string
              required:
                - fee_percentage
                - product_id
              title: Credit Card Processing Fee Options
              type: object
            disable_electronic_payment_vaulting:
              description: >-
                If set, in the portal people are not allowed to save credit
                cards
              title: Disable Electronic Payment Vaulting
              type: boolean
            enable_bill_my_organization:
              description: If set, the user has the option to bill their organization
              title: Enable Bill My Organization
              type: boolean
            enable_bill_my_parent_organization:
              description: >-
                If set, the user has the option to bill their organization's
                parent organization
              title: Enable Bill My Parent Organization
              type: boolean
            enable_donations_at_checkout:
              description: >-
                If selected, users will be prompted to make a donation upon
                checking out
              title: Enable Donations At Checkout
              type: boolean
            enable_electronic_checks:
              description: If set, electronic checks are allowed
              title: Enable Electronic Checks
              type: boolean
            enable_pay_later:
              description: >-
                If set, pay later is enabled on this checkout regardless of
                product settings... if not, the product settings are observed
              title: Enable Pay Later
              type: boolean
            enable_payroll_deduction:
              description: If set, payroll deduction is allowed
              title: Enable Payroll Deduction
              type: boolean
            enable_split_payments:
              description: If set, users are allowed to split payments
              title: Enable Split Payments
              type: boolean
            installment_plan_options:
              items:
                additionalProperties: false
                properties:
                  additional_cost:
                    description: The additional cost of the installment plan
                    format: double
                    title: Additional Cost
                    type: number
                  installment_plan_id:
                    description: The installment plan that this product supports
                    title: Installment Plan
                    type: string
                  is_default:
                    description: Whether this is the default installment plan option
                    title: Is Default
                    type: boolean
                required:
                  - installment_plan_id
                type: object
              minItems: 1
              oneOf:
                - x-required: true
              type: array
            invoice_payment_terms_id:
              description: The payment terms for invoices; if left blank, default is used
              title: Invoice Payment Terms
              type: string
            invoice_template_id:
              description: The template to use for invoices created during this process
              title: Invoice Template
              type: string
            merchant_account_id:
              description: >-
                The merchant account that the store should use to receive
                payments
              title: Merchant Account
              type: string
            pay_later_options:
              additionalProperties: false
              properties:
                billing_address:
                  enum:
                    - do not show
                    - optional
                    - required
                  title: Billing Address
                  type: string
                purchase_order_number:
                  enum:
                    - do not show
                    - optional
                    - required
                  title: Purchase Order Number
                  type: string
                reference_number:
                  description: 'The reference #'
                  title: Reference Number
                  type: string
              title: Pay Later Options
              type: object
            restocking_fee_product_id:
              description: The ID of the product used for restocking fees
              title: Restocking Fee Product
              type: string
            special_instructions:
              description: Instructions shown to the user
              title: Special Instructions
              type: string
            use_pro_forma_invoices:
              description: Whether to use pro forma invoices when user elects to pay later
              title: Use Pro Forma Invoices
              type: boolean
          required:
            - bank_account_id
            - business_unit_id
            - merchant_account_id
          title: Checkout Settings
          type: object
        default_fund_id:
          description: >-
            The default fund that a gift should be allocated to when the user
            makes an non-targeted gift
          title: Default Fund
          type: string
        donor_instructions:
          description: Instructions shown to donors on the giving form
          title: Donor Instructions
          type: string
        enable_gift_receipt:
          description: Enable confirmation email for submitted gift forms
          title: Enable Gift Receipt
          type: boolean
        enable_pledge_receipt:
          description: Enable confirmation email for submitted pledge forms
          title: Enable Pledge Receipt
          type: boolean
        enable_premiums:
          description: If set, premiums are automatically assigned with gifts
          title: Enable Premiums
          type: boolean
        gift_receipt:
          additionalProperties: false
          description: The confirmation email for submitted gift forms
          properties:
            bcc:
              description: Anyone that should be bcc'ed on the email
              title: Bcc
              type: string
            body:
              description: The email body
              title: Body
              type: string
            cc:
              description: Anyone that should be cc'ed on the email
              title: Cc
              type: string
            from:
              description: From email address
              title: From
              type: string
            from_name:
              description: From name
              title: From Name
              type: string
            reply_to:
              description: The reply to
              title: Reply To
              type: string
            subject:
              description: The email subject
              title: Subject
              type: string
          required:
            - body
            - subject
          title: Gift Receipt
          type: object
        id:
          description: The unique, string identifier of this application process
          pattern: ^[\w|-]+$
          title: ID
          type: string
        is_active:
          description: Whether or not this process is active
          title: Is Active
          type: boolean
        name:
          description: The name of the application process
          title: Name
          type: string
        new_donor_contact_options:
          additionalProperties: false
          description: >-
            The fields that should show for new contacts being created in the
            portal during the contribution process
          properties: {}
          title: New Donor Contact Options
          type: object
        override_checkout_settings:
          description: Whether or not to override POC settings
          title: Override Checkout Settings
          type: boolean
        pledge_installment_plans:
          items:
            additionalProperties: false
            properties:
              installment_plan_id:
                description: The installment plan
                title: Installment Plan
                type: string
              name:
                description: >-
                  The description of the installment plan to be shown to the
                  user
                title: Name
                type: string
            required:
              - installment_plan_id
              - name
            type: object
          minItems: 1
          type: array
        pledge_receipt:
          additionalProperties: false
          description: The confirmation email for submitted pledge forms
          properties:
            bcc:
              description: Anyone that should be bcc'ed on the email
              title: Bcc
              type: string
            body:
              description: The email body
              title: Body
              type: string
            cc:
              description: Anyone that should be cc'ed on the email
              title: Cc
              type: string
            from:
              description: From email address
              title: From
              type: string
            from_name:
              description: From name
              title: From Name
              type: string
            reply_to:
              description: The reply to
              title: Reply To
              type: string
            subject:
              description: The email subject
              title: Subject
              type: string
          required:
            - body
            - subject
          title: Pledge Receipt
          type: object
        pledges_generate_pro_forma_invoices:
          description: If true, pledges will generate pro forma (not real) invoices
          title: Pledges Generate Pro Forma Invoices
          type: boolean
        premium_rules:
          items:
            additionalProperties: false
            properties:
              gift_amount_range_end:
                description: The ending range
                format: float
                title: Gift Amount Range End
                type: number
              gift_amount_range_start:
                description: The starting range for the premium rule
                format: float
                title: Gift Amount Range Start
                type: number
              premium_id:
                description: The premium
                title: Premium
                type: string
            required:
              - premium_id
            type: object
          type: array
        premium_shipping_method_id:
          description: The shipping method to use for premiums
          title: Premium Shipping Method
          type: string
        recurring_gift_options:
          additionalProperties: false
          properties:
            allow_donor_to_specify_end_date:
              description: If set, the user can indicate when they want the gifts to end
              title: Allow Donor To Specify End Date
              type: boolean
            enable_annually:
              description: If set, donors can have annual recurring gifts
              title: Enable Annually
              type: boolean
            enable_monthly:
              description: If set, donors can have monthly recurring gifts
              title: Enable Monthly
              type: boolean
            enable_quarterly:
              description: If set, donors can have quarterly recurring gifts
              title: Enable Quarterly
              type: boolean
          title: Recurring Gift Options
          type: object
        require_acknowledgement:
          description: If set, donors must acknowledge a checkbox before proceeding
          title: Require Acknowledgement
          type: boolean
        show_campaign_progress:
          description: >-
            If set, then the campaign in use for the giving form will show
            progress at the time of giving
          title: Show Campaign Progress
          type: boolean
        suggest_giving_amounts:
          description: >-
            If true, giving amounts are suggested; otherwise, the donor is free
            to enter their own
          title: Suggest Giving Amounts
          type: boolean
        suggested_gift_amount:
          description: The suggested amount of given, set by default
          format: float
          title: Suggested Gift Amount
          type: number
        suggested_giving_amounts:
          items:
            format: float
            minimum: 1
            type: number
          maxItems: 10
          minItems: 1
          title: Suggested Giving Amounts
          type: array
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        targeted_giving:
          description: Whether targeted giving is enabled for this process
          enum:
            - disabled
            - specify multiple funds
            - specify single fund
          title: Targeted Giving
          type: string
        targeted_giving_options:
          additionalProperties: false
          properties:
            restrict_to_fund_categories:
              description: Should this process be restricted to specific categories
              title: Restrict To Fund Categories
              type: boolean
            restrict_to_fund_types:
              description: Should this process be restricted to certain types of funds
              title: Restrict To Fund Types
              type: boolean
            restrict_to_funds:
              description: Should this process be restricted to specific funds
              title: Restrict To Funds
              type: boolean
            restricted_fund_category_ids:
              items:
                type: string
              minItems: 1
              oneOf:
                - x-required: true
              title: Restricted Fund Categories
              type: array
            restricted_fund_ids:
              items:
                type: string
              minItems: 1
              oneOf:
                - x-required: true
              title: Restricted Funds
              type: array
            restricted_fund_types:
              items:
                enum:
                  - restricted funds
                  - unrestricted funds
                type: string
              minItems: 1
              oneOf:
                - x-required: true
              title: Restricted Fund Types
              type: array
          title: Targeted Giving Options
          type: object
        tribute_gift_options:
          additionalProperties: false
          properties:
            email_notification:
              additionalProperties: false
              description: The templated email to send to honorees
              oneOf:
                - x-required: true
              properties:
                bcc:
                  description: Anyone that should be bcc'ed on the email
                  title: Bcc
                  type: string
                body:
                  description: The email body
                  title: Body
                  type: string
                cc:
                  description: Anyone that should be cc'ed on the email
                  title: Cc
                  type: string
                from:
                  description: From email address
                  title: From
                  type: string
                from_name:
                  description: From name
                  title: From Name
                  type: string
                reply_to:
                  description: The reply to
                  title: Reply To
                  type: string
                subject:
                  description: The email subject
                  title: Subject
                  type: string
              required:
                - body
                - subject
              title: Email Notification
              type: object
            honoree_notification:
              enum:
                - disabled
                - email
                - email or mail
                - mail
              title: Honoree Notification
              type: string
          title: Tribute Gift Options
          type: object
      required:
        - acknowledgement_settings
        - checkout_settings
        - default_fund_id
        - gift_receipt
        - id
        - name
        - pledge_installment_plans
        - pledge_receipt
        - premium_rules
        - premium_shipping_method_id
        - recurring_gift_options
        - suggested_giving_amounts
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
        - targeted_giving
        - tribute_gift_options
      type: object
    ListAppealsResponse:
      properties:
        Count:
          type: integer
        Items:
          items:
            $ref: '#/components/schemas/Appeal'
          type: array
        LastEvaluatedKey:
          type: string
      type: object
    ListDonorStatementsResponse:
      properties:
        Count:
          type: integer
        Items:
          items:
            $ref: '#/components/schemas/DonorStatement'
          type: array
        LastEvaluatedKey:
          type: string
      type: object
    ListGiftsResponse:
      properties:
        Count:
          type: integer
        Items:
          items:
            $ref: '#/components/schemas/Gift'
          type: array
        LastEvaluatedKey:
          type: string
      type: object
    ListPledgesResponse:
      properties:
        Count:
          type: integer
        Items:
          items:
            $ref: '#/components/schemas/Pledge'
          type: array
        LastEvaluatedKey:
          type: string
      type: object
    ListProductsResponse:
      properties:
        Count:
          type: integer
        Items:
          items:
            $ref: '#/components/schemas/Product'
          type: array
        LastEvaluatedKey:
          type: string
      type: object
    ListRecurringGiftsResponse:
      properties:
        Count:
          type: integer
        Items:
          items:
            $ref: '#/components/schemas/RecurringGift'
          type: array
        LastEvaluatedKey:
          type: string
      type: object
    ListStandardQueryDefinitionsResponse:
      items:
        $ref: '#/components/schemas/StandardQueryDefinition'
      type: array
    PagedAppealSearchResults:
      properties:
        Items:
          items:
            $ref: '#/components/schemas/AppealSearchResults'
          type: array
        LastEvaluatedKey:
          type: string
      type: object
    PagedCampaignSearchResults:
      properties:
        Items:
          items:
            $ref: '#/components/schemas/CampaignSearchResults'
          type: array
        LastEvaluatedKey:
          type: string
      type: object
    PagedDonorSearchResults:
      properties:
        Items:
          items:
            $ref: '#/components/schemas/DonorSearchResults'
          type: array
        LastEvaluatedKey:
          type: string
      type: object
    PagedGiftSearchResults:
      properties:
        Items:
          items:
            $ref: '#/components/schemas/GiftSearchResults'
          type: array
        LastEvaluatedKey:
          type: string
      type: object
    PagedPledgeSearchResults:
      properties:
        Items:
          items:
            $ref: '#/components/schemas/PledgeSearchResults'
          type: array
        LastEvaluatedKey:
          type: string
      type: object
    PagedRecurringGiftSearchResults:
      properties:
        Items:
          items:
            $ref: '#/components/schemas/RecurringGiftSearchResults'
          type: array
        LastEvaluatedKey:
          type: string
      type: object
    PatchDirective:
      additionalProperties: false
      properties:
        op:
          description: The operation
          enum:
            - add
            - copy
            - move
            - remove
            - replace
            - test
          title: Op
          type: string
        path:
          description: The JSON path
          title: Path
          type: string
        value:
          description: The updated value
          title: Value
          type: string
      required:
        - op
        - path
      type: object
    Pledge:
      additionalProperties: false
      properties:
        amount:
          description: Gift amount
          format: float
          title: Amount
          type: number
        amount_allocated_to_primary_fund:
          description: >-
            When gift is split, this is the amount that is allocated to the
            primary fund
          format: float
          title: Amount Allocated To Primary Fund
          type: number
        amount_allocated_to_splits:
          description: When gift is split, this is the amount that is allocated to splits
          format: float
          title: Amount Allocated To Splits
          type: number
        amount_fulfilled:
          description: Amount of pledge fulfilled
          format: float
          title: Amount Fulfilled
          type: number
        amount_outstanding:
          description: The amount of outstanding on the pledge
          format: float
          title: Amount Outstanding
          type: number
        anonymous:
          description: Anonymous
          title: Anonymous
          type: boolean
        appeal_id:
          description: The id for the appeal associated with the gift
          title: Appeal
          type: string
        campaign_id:
          description: The id for the campaign associated with the gift
          title: Campaign
          type: string
        contact_id:
          description: The rolodex contact id for the gift giver
          title: Contact
          type: string
        cover_transaction_costs:
          description: If selected, the donor covers the transaction fees
          title: Cover Transaction Costs
          type: boolean
        currency_code:
          description: The currency code of the gift
          title: Currency Code
          type: string
        currency_symbol:
          description: Currency
          title: Currency Symbol
          type: string
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        date:
          description: The creation date for the gift
          title: Date
          type: string
        donor_id:
          description: The donor record associated with this gift
          title: Donor
          type: string
        donor_type:
          description: The donor type for the gift
          enum:
            - contact
            - organization
          title: Donor Type
          type: string
        fund_id:
          description: The id for the fund associated with the gift
          title: Fund
          type: string
        giving_process_id:
          description: The process of that led to the gift
          title: Giving Process
          type: string
        has_soft_credits:
          description: If true, this gift has soft credits to others
          title: Has Soft Credits
          type: boolean
        has_splits:
          description: If true, this gift is split into different funds
          title: Has Splits
          type: boolean
        id:
          description: The unique, string identifier of this pledge
          pattern: ^[\w:|-]+$
          title: ID
          type: string
        installment_plan_id:
          description: The installment plan for the pledge
          title: Installment Plan
          type: string
        next_payment_date:
          description: The next processing date of the pledge
          title: Next Payment Date
          type: string
        notes:
          description: Notes about the gift
          title: Notes
          type: string
        number:
          description: The gift number
          format: float
          title: Number
          type: number
        order_id:
          description: The id for the order associated with the gift
          title: Order
          type: string
        order_line_item_id:
          description: The id for the order line item associated with the gift
          title: Order Line Item
          type: string
        organization_id:
          description: The organization id associated with this gift
          title: Organization
          type: string
        payment_info:
          additionalProperties: false
          description: Payment information for the recurring gift
          properties:
            card_expiration:
              description: The expiration date of the card
              title: Card Expiration
              type: string
            card_type:
              description: The type of card being used, or CHECK if electronic check
              enum:
                - american express
                - discover
                - electronic check
                - mastercard
                - other
                - visa
              title: Card Type
              type: string
            merchant_account_tokens:
              items:
                additionalProperties: false
                properties:
                  merchant_account_id:
                    description: The merchant account id
                    title: Merchant Account
                    type: string
                  token:
                    description: The token representing the card/electronic check info
                    title: Token
                    type: string
                required:
                  - merchant_account_id
                  - token
                type: object
              minItems: 1
              type: array
            payment_account:
              description: The masked payment account information
              title: Payment Account
              type: string
            payment_origin:
              description: Whether or not this is a saved payment method
              enum:
                - ad hoc
                - saved
                - single token
              title: Payment Origin
              type: string
            token:
              description: For integrated payments, the single token
              title: Token
              type: string
            type:
              description: The type of payment
              enum:
                - credit card
                - electronic check
              title: Type
              type: string
          required:
            - payment_origin
            - type
          title: Payment Info
          type: object
        premium_assignment:
          enum:
            - assigned
            - declined by donor
            - not applicable
          title: Premium Assignment
          type: string
        premium_fair_market_value:
          description: The amount of any premiums associated with the gift
          format: float
          title: Premium Fair Market Value
          type: number
        premium_id:
          description: If the user has selected a premium it is here
          title: Premium
          type: string
        remaining_payments:
          description: The number of payments remaining on the pledge
          format: float
          title: Remaining Payments
          type: number
        shipping_address:
          $ref: '#/components/schemas/Address'
        soft_credits:
          items:
            additionalProperties: false
            properties:
              amount:
                description: The amount of soft credit that the person should receive
                format: float
                title: Amount
                type: number
              contact_id:
                oneOf:
                  - x-required: true
                title: Contact
                type: string
              donor_type:
                enum:
                  - contact
                  - organization
                title: Donor Type
                type: string
              fund_id:
                description: The fund to which this credit is allocated
                title: Fund
                type: string
              organization_id:
                oneOf:
                  - x-required: true
                title: Organization
                type: string
              percentage:
                description: The percentage to attribute gifts
                format: float
                maximum: 100
                minimum: 0
                title: Percentage
                type: number
              reason:
                enum:
                  - matching
                  - other
                  - relationship
                  - tribute
                title: Reason
                type: string
            required:
              - amount
              - fund_id
              - percentage
              - reason
            type: object
          minItems: 1
          type: array
        splits:
          description: An array of fund allocations for this gift
          items:
            additionalProperties: false
            properties:
              amount:
                description: The amount for this allocation of the gift
                format: float
                title: Amount
                type: number
              fund_id:
                description: The id for the fund associated with the gift allocation
                title: Fund
                type: string
            required:
              - amount
              - fund_id
            type: object
          type: array
        status:
          description: The status of the pledge
          enum:
            - cancelled
            - open
            - paid
            - paused
          title: Status
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        tax_deductible_amount:
          description: The amount of the gift less any premiums
          format: float
          title: Tax Deductible Amount
          type: number
        tribute_gift:
          description: Whether or not this is a tribute gift
          title: Tribute Gift
          type: boolean
        tribute_gift_info:
          additionalProperties: false
          properties:
            address:
              $ref: '#/components/schemas/Address'
            contact_id:
              description: The optional linked contact
              title: Contact
              type: string
            details:
              description: Additional details
              title: Details
              type: string
            email_address:
              format: email
              oneOf:
                - x-required: true
              title: Email Address
              type: string
            inform_honoree:
              description: If true, the honoree is informed about the gift
              title: Inform Honoree
              type: boolean
            inform_honoree_by:
              enum:
                - email
                - mail
              oneOf:
                - x-required: true
              title: Inform Honoree By
              type: string
            message:
              description: Message to send when notifying
              oneOf:
                - x-required: true
              title: Message
              type: string
            name:
              description: The name
              title: Name
              type: string
            type:
              enum:
                - in honor of
                - in memory of
              title: Type
              type: string
          required:
            - name
            - type
          title: Tribute Gift Info
          type: object
      required:
        - amount
        - amount_allocated_to_primary_fund
        - amount_allocated_to_splits
        - amount_fulfilled
        - amount_outstanding
        - contact_id
        - donor_id
        - donor_type
        - fund_id
        - id
        - installment_plan_id
        - organization_id
        - remaining_payments
        - soft_credits
        - status
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
        - tax_deductible_amount
      type: object
    PledgeLevel:
      properties:
        amount_per_payment:
          description: The amount each payment can be
          title: Amount Per Payment
          type: string
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        display_order:
          description: The order in which to display the pledge level
          format: float
          title: Display Order
          type: number
        id:
          description: The unique, string identifier of this pledge level
          pattern: /^[\w:|-]+$/
          title: ID
          type: string
        name:
          description: The name of the pledge level
          title: Name
          type: string
        number_of_payments:
          description: The number of payment in this pledge level
          format: float
          title: Number Of Payments
          type: number
        payment_frequency:
          enum:
            - annual
            - monthly
            - quarterly
          title: Payment Frequency
          type: string
        processing_day:
          description: The day of the month on which to process payments
          title: Processing Day
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        total:
          description: Total pledge amount for the pledge level
          title: Total
          type: string
      required:
        - id
        - name
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    PledgeNotice:
      properties:
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        email:
          description: The email to send
          properties:
            bcc:
              description: Anyone that should be bcc'ed on the email
              title: Bcc
              type: string
            body:
              description: The email body
              title: Body
              type: string
            cc:
              description: Anyone that should be cc'ed on the email
              title: Cc
              type: string
            from:
              description: From email address
              title: From
              type: string
            from_name:
              description: From name
              title: From Name
              type: string
            reply_to:
              description: The reply to
              title: Reply To
              type: string
            subject:
              description: The email subject
              title: Subject
              type: string
          required:
            - body
            - subject
          title: Email
          type: object
        id:
          description: The unique, string identifier of this pledge notice
          pattern: /^[\w:|-]+$/
          title: ID
          type: string
        name:
          description: The name of the pledge notice
          title: Name
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
      required:
        - email
        - id
        - name
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    PledgePayload:
      additionalProperties: false
      properties:
        amount:
          description: Gift amount
          format: float
          title: Amount
          type: number
        anonymous:
          description: Anonymous
          title: Anonymous
          type: boolean
        appeal_id:
          description: The id for the appeal associated with the gift
          title: Appeal
          type: string
        campaign_id:
          description: The id for the campaign associated with the gift
          title: Campaign
          type: string
        contact_id:
          description: The rolodex contact id for the gift giver
          title: Contact
          type: string
        cover_transaction_costs:
          description: If selected, the donor covers the transaction fees
          title: Cover Transaction Costs
          type: boolean
        currency_code:
          description: The currency code of the gift
          title: Currency Code
          type: string
        currency_symbol:
          description: Currency
          title: Currency Symbol
          type: string
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        donor_type:
          description: The donor type for the gift
          enum:
            - contact
            - organization
          title: Donor Type
          type: string
        fund_id:
          description: The id for the fund associated with the gift
          title: Fund
          type: string
        giving_process_id:
          description: The process of that led to the gift
          title: Giving Process
          type: string
        has_splits:
          description: If true, this gift is split into different funds
          title: Has Splits
          type: boolean
        installment_plan_id:
          description: The installment plan for the pledge
          title: Installment Plan
          type: string
        notes:
          description: Notes about the gift
          title: Notes
          type: string
        organization_id:
          description: The organization id associated with this gift
          title: Organization
          type: string
        premium_assignment:
          enum:
            - assigned
            - declined by donor
            - not applicable
          title: Premium Assignment
          type: string
        premium_fair_market_value:
          description: The amount of any premiums associated with the gift
          format: float
          title: Premium Fair Market Value
          type: number
        premium_id:
          description: If the user has selected a premium it is here
          title: Premium
          type: string
        shipping_address:
          $ref: '#/components/schemas/Address'
        splits:
          description: An array of fund allocations for this gift
          items:
            additionalProperties: false
            properties:
              amount:
                description: The amount for this allocation of the gift
                format: float
                title: Amount
                type: number
              fund_id:
                description: The id for the fund associated with the gift allocation
                title: Fund
                type: string
            required:
              - amount
              - fund_id
            type: object
          type: array
        tribute_gift:
          description: Whether or not this is a tribute gift
          title: Tribute Gift
          type: boolean
        tribute_gift_info:
          additionalProperties: false
          properties:
            address:
              $ref: '#/components/schemas/Address'
            contact_id:
              description: The optional linked contact
              title: Contact
              type: string
            details:
              description: Additional details
              title: Details
              type: string
            email_address:
              format: email
              oneOf:
                - x-required: true
              title: Email Address
              type: string
            inform_honoree:
              description: If true, the honoree is informed about the gift
              title: Inform Honoree
              type: boolean
            inform_honoree_by:
              enum:
                - email
                - mail
              oneOf:
                - x-required: true
              title: Inform Honoree By
              type: string
            message:
              description: Message to send when notifying
              oneOf:
                - x-required: true
              title: Message
              type: string
            name:
              description: The name
              title: Name
              type: string
            type:
              enum:
                - in honor of
                - in memory of
              title: Type
              type: string
          required:
            - name
            - type
          title: Tribute Gift Info
          type: object
      required:
        - amount
        - contact_id
        - donor_type
        - fund_id
        - installment_plan_id
        - organization_id
      type: object
    PledgeSearchParameters:
      additionalProperties: false
      properties:
        appeal_id:
          description: Appeal ids to search
          items:
            type: string
          title: Appeal
          type: array
        campaign_id:
          description: Campaign ids to search
          items:
            type: string
          title: Campaign
          type: array
        contact_id:
          description: Contact ids for the donor
          items:
            type: string
          title: Contact
          type: array
        date:
          items:
            format: date-time
            type: string
          maxItems: 2
          minItems: 2
          title: Date
          type: array
        fund_id:
          description: Fund ids to search
          items:
            type: string
          title: Fund
          type: array
        ids:
          description: IDs to search
          items:
            type: string
          title: Ids
          type: array
        order_id:
          description: Order ids to search
          items:
            type: string
          title: Order
          type: array
        organization_id:
          description: Organization ids for the donor
          items:
            type: string
          title: Organization
          type: array
        status:
          description: Recurring gift ids to search
          items:
            type: string
          title: Status
          type: array
        type:
          description: Types of the gifts
          items:
            type: string
          title: Type
          type: array
      type: object
    PledgeSearchResults:
      additionalProperties: false
      properties:
        appeal_id:
          description: Appeal id for the gift
          title: Appeal
          type: string
        campaign_id:
          description: Campaign id for the gift
          title: Campaign
          type: string
        contact_id:
          description: Contact ids for the donor
          title: Contact
          type: string
        date:
          title: Date
          type: string
        fund_id:
          description: Fund id for the gift
          title: Fund
          type: string
        id:
          description: ID of the gift
          title: ID
          type: string
        order_id:
          description: Order id for the gift
          title: Order
          type: string
        organization_id:
          description: Organization ids for the donor
          title: Organization
          type: string
        status:
          description: Status
          title: Status
          type: string
        type:
          description: Types of the gifts
          title: Type
          type: string
      type: object
    Premium:
      additionalProperties: false
      properties:
        description:
          description: Optional description
          title: Description
          type: string
        fair_market_value:
          description: >-
            The FMV of the premium, used to calculate the tax deductible value
            of the gift
          format: float
          title: Fair Market Value
          type: number
        id:
          description: The unique, string identifier of this premium
          pattern: ^[\w:|-]+$
          title: ID
          type: string
        image_url:
          description: Image to be displayed of the product
          title: Image Url
          type: string
        is_active:
          description: Whether or not this premium is active
          title: Is Active
          type: boolean
        merchandise_id:
          description: The merchandise linked to this premium
          title: Merchandise
          type: string
        name:
          description: The name of the premium
          title: Name
          type: string
        quantity:
          description: The quantity of merchandise to give
          format: float
          title: Quantity
          type: number
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
      required:
        - fair_market_value
        - id
        - merchandise_id
        - name
        - quantity
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    PreviewEmailRequest:
      additionalProperties: false
      properties:
        destination_email_address:
          title: Destination Email Address
          type: string
        email_template:
          additionalProperties: false
          properties:
            bcc:
              description: Anyone that should be bcc'ed on the email
              title: Bcc
              type: string
            body:
              description: The email body
              title: Body
              type: string
            cc:
              description: Anyone that should be cc'ed on the email
              title: Cc
              type: string
            from:
              description: From email address
              title: From
              type: string
            from_name:
              description: From name
              title: From Name
              type: string
            reply_to:
              description: The reply to
              title: Reply To
              type: string
            subject:
              description: The email subject
              title: Subject
              type: string
          required:
            - body
            - subject
          title: Email Template
          type: object
        pledge_id:
          title: Pledge
          type: string
        recurring_gift_id:
          title: Recurring Gift
          type: string
      required:
        - destination_email_address
        - recurring_gift_id
      type: object
    PreviewReceiptRequest:
      additionalProperties: false
      properties:
        destination_email_address:
          title: Destination Email Address
          type: string
        email_template:
          additionalProperties: false
          properties:
            bcc:
              description: Anyone that should be bcc'ed on the email
              title: Bcc
              type: string
            body:
              description: The email body
              title: Body
              type: string
            cc:
              description: Anyone that should be cc'ed on the email
              title: Cc
              type: string
            from:
              description: From email address
              title: From
              type: string
            from_name:
              description: From name
              title: From Name
              type: string
            reply_to:
              description: The reply to
              title: Reply To
              type: string
            subject:
              description: The email subject
              title: Subject
              type: string
          required:
            - body
            - subject
          title: Email Template
          type: object
        gift_id:
          title: Gift
          type: string
        pledge_id:
          title: Pledge
          type: string
      required:
        - destination_email_address
        - pledge_id
      type: object
    ProcessGiftInfo:
      additionalProperties: false
      properties:
        donor_info:
          additionalProperties: false
          description: Optional info for public gifts
          properties: {}
          title: Donor Info
          type: object
        electronic_payment_info:
          additionalProperties: false
          description: The payment info
          properties: {}
          title: Electronic Payment Info
          type: object
        gift_payload:
          additionalProperties: false
          properties:
            amount:
              description: Gift amount
              format: float
              title: Amount
              type: number
            anonymous:
              description: Anonymous
              title: Anonymous
              type: boolean
            appeal_id:
              description: The id for the appeal associated with the gift
              title: Appeal
              type: string
            campaign_id:
              description: The id for the campaign associated with the gift
              title: Campaign
              type: string
            contact_id:
              description: The rolodex contact id for the gift giver
              oneOf:
                - x-required: true
              title: Contact
              type: string
            cover_transaction_costs:
              description: If selected, the donor covers the transaction fees
              title: Cover Transaction Costs
              type: boolean
            currency_code:
              description: The currency code of the gift
              title: Currency Code
              type: string
            currency_symbol:
              description: Currency
              title: Currency Symbol
              type: string
            custom_field_values:
              items:
                $ref: '#/components/schemas/CustomFieldValue'
              title: Custom Field Values
              type: array
            donor_type:
              description: The donor type for the gift
              enum:
                - contact
                - organization
              title: Donor Type
              type: string
            fund_id:
              description: The id for the fund associated with the gift
              title: Fund
              type: string
            giving_process_id:
              description: The process of that led to the gift
              title: Giving Process
              type: string
            has_splits:
              description: If true, this gift is split into different funds
              title: Has Splits
              type: boolean
            make_recurring:
              description: Whether to make this a recurring gift
              title: Make Recurring
              type: boolean
            notes:
              description: Notes about the gift
              title: Notes
              type: string
            organization_id:
              description: The organization id associated with this gift
              oneOf:
                - x-required: true
              title: Organization
              type: string
            premium_assignment:
              enum:
                - assigned
                - declined by donor
                - not applicable
              title: Premium Assignment
              type: string
            premium_fair_market_value:
              description: The amount of any premiums associated with the gift
              format: float
              title: Premium Fair Market Value
              type: number
            premium_id:
              description: If the user has selected a premium it is here
              title: Premium
              type: string
            recurring_frequency:
              enum:
                - monthly
                - quarterly
                - yearly
              title: Recurring Frequency
              type: string
            recurring_gift_end_date:
              description: optional end date for gift
              title: Recurring Gift End Date
              type: string
            shipping_address:
              $ref: '#/components/schemas/Address'
            splits:
              description: An array of fund allocations for this gift
              items:
                additionalProperties: false
                properties:
                  amount:
                    description: The amount for this allocation of the gift
                    format: float
                    title: Amount
                    type: number
                  fund_id:
                    description: The id for the fund associated with the gift allocation
                    title: Fund
                    type: string
                required:
                  - amount
                  - fund_id
                type: object
              type: array
            tribute_gift:
              description: Whether or not this is a tribute gift
              title: Tribute Gift
              type: boolean
            tribute_gift_info:
              additionalProperties: false
              properties:
                address:
                  $ref: '#/components/schemas/Address'
                contact_id:
                  description: The optional linked contact
                  title: Contact
                  type: string
                details:
                  description: Additional details
                  title: Details
                  type: string
                email_address:
                  format: email
                  oneOf:
                    - x-required: true
                  title: Email Address
                  type: string
                inform_honoree:
                  description: If true, the honoree is informed about the gift
                  title: Inform Honoree
                  type: boolean
                inform_honoree_by:
                  enum:
                    - email
                    - mail
                  oneOf:
                    - x-required: true
                  title: Inform Honoree By
                  type: string
                message:
                  description: Message to send when notifying
                  oneOf:
                    - x-required: true
                  title: Message
                  type: string
                name:
                  description: The name
                  title: Name
                  type: string
                type:
                  enum:
                    - in honor of
                    - in memory of
                  title: Type
                  type: string
              required:
                - name
                - type
              title: Tribute Gift Info
              type: object
          required:
            - amount
            - donor_type
            - fund_id
          title: Gift Payload
          type: object
      required:
        - gift_payload
      type: object
    ProcessPledgeInfo:
      additionalProperties: false
      properties:
        donor_info:
          additionalProperties: false
          description: Optional info for public pledges
          properties: {}
          title: Donor Info
          type: object
        electronic_payment_info:
          additionalProperties: false
          description: The payment info
          properties: {}
          title: Electronic Payment Info
          type: object
        pledge_payload:
          additionalProperties: false
          properties:
            amount:
              description: Gift amount
              format: float
              title: Amount
              type: number
            anonymous:
              description: Anonymous
              title: Anonymous
              type: boolean
            appeal_id:
              description: The id for the appeal associated with the gift
              title: Appeal
              type: string
            campaign_id:
              description: The id for the campaign associated with the gift
              title: Campaign
              type: string
            contact_id:
              description: The rolodex contact id for the gift giver
              oneOf:
                - x-required: true
              title: Contact
              type: string
            cover_transaction_costs:
              description: If selected, the donor covers the transaction fees
              title: Cover Transaction Costs
              type: boolean
            currency_code:
              description: The currency code of the gift
              title: Currency Code
              type: string
            currency_symbol:
              description: Currency
              title: Currency Symbol
              type: string
            custom_field_values:
              items:
                $ref: '#/components/schemas/CustomFieldValue'
              title: Custom Field Values
              type: array
            donor_type:
              description: The donor type for the gift
              enum:
                - contact
                - organization
              title: Donor Type
              type: string
            fund_id:
              description: The id for the fund associated with the gift
              title: Fund
              type: string
            giving_process_id:
              description: The process of that led to the gift
              title: Giving Process
              type: string
            has_splits:
              description: If true, this gift is split into different funds
              title: Has Splits
              type: boolean
            installment_plan_id:
              description: The installment plan for the pledge
              title: Installment Plan
              type: string
            notes:
              description: Notes about the gift
              title: Notes
              type: string
            organization_id:
              description: The organization id associated with this gift
              oneOf:
                - x-required: true
              title: Organization
              type: string
            premium_assignment:
              enum:
                - assigned
                - declined by donor
                - not applicable
              title: Premium Assignment
              type: string
            premium_fair_market_value:
              description: The amount of any premiums associated with the gift
              format: float
              title: Premium Fair Market Value
              type: number
            premium_id:
              description: If the user has selected a premium it is here
              title: Premium
              type: string
            shipping_address:
              $ref: '#/components/schemas/Address'
            splits:
              description: An array of fund allocations for this gift
              items:
                additionalProperties: false
                properties:
                  amount:
                    description: The amount for this allocation of the gift
                    format: float
                    title: Amount
                    type: number
                  fund_id:
                    description: The id for the fund associated with the gift allocation
                    title: Fund
                    type: string
                required:
                  - amount
                  - fund_id
                type: object
              type: array
            tribute_gift:
              description: Whether or not this is a tribute gift
              title: Tribute Gift
              type: boolean
            tribute_gift_info:
              additionalProperties: false
              properties:
                address:
                  $ref: '#/components/schemas/Address'
                contact_id:
                  description: The optional linked contact
                  title: Contact
                  type: string
                details:
                  description: Additional details
                  title: Details
                  type: string
                email_address:
                  format: email
                  oneOf:
                    - x-required: true
                  title: Email Address
                  type: string
                inform_honoree:
                  description: If true, the honoree is informed about the gift
                  title: Inform Honoree
                  type: boolean
                inform_honoree_by:
                  enum:
                    - email
                    - mail
                  oneOf:
                    - x-required: true
                  title: Inform Honoree By
                  type: string
                message:
                  description: Message to send when notifying
                  oneOf:
                    - x-required: true
                  title: Message
                  type: string
                name:
                  description: The name
                  title: Name
                  type: string
                type:
                  enum:
                    - in honor of
                    - in memory of
                  title: Type
                  type: string
              required:
                - name
                - type
              title: Tribute Gift Info
              type: object
          required:
            - amount
            - donor_type
            - fund_id
            - installment_plan_id
          title: Pledge Payload
          type: object
      required:
        - pledge_payload
      type: object
    Product:
      additionalProperties: false
      properties:
        allow_customer_to_choose_installment_plan:
          description: If true, the customer can choose their installment plan
          title: Allow Customer To Choose Installment Plan
          type: boolean
        bulk_pricing_rules:
          items:
            additionalProperties: false
            properties:
              discount_amount:
                description: The percentage/flat rate
                format: float
                minimum: 0
                title: Discount Amount
                type: number
              discount_type:
                description: The type of discount rule
                enum:
                  - flat rate
                  - percentage
                title: Discount Type
                type: string
              ending_range:
                description: The ending range of the rule
                minimum: 0
                title: Ending Range
                type: integer
              starting_range:
                description: The starting range of the rule
                minimum: 0
                title: Starting Range
                type: integer
            required:
              - discount_amount
              - discount_type
            type: object
          minItems: 1
          type: array
        bundled_products:
          items:
            additionalProperties: false
            properties:
              member_price:
                description: The member price
                format: double
                title: Member Price
                type: number
              price:
                description: The price to bundle
                format: double
                title: Price
                type: number
              product_id:
                description: The product ID
                title: Product
                type: string
              product_type:
                description: The product type
                title: Product Type
                type: string
              quantity:
                description: The quantity to bundle
                title: Quantity
                type: integer
              type:
                enum:
                  - bundled product
                  - inline bundled product
                title: Type
                type: string
            required:
              - product_id
              - product_type
              - quantity
              - type
            type: object
          minItems: 1
          type: array
        bundled_products_inventory_handling:
          description: >-
            Whether to track inventory for the entire bundle, or for each
            product separately
          enum:
            - bundle
            - each product
          title: Bundled Products Inventory Handling
          type: string
        business_unit_id:
          description: The business unit of the product
          title: Business Unit
          type: string
        cancellation_fee:
          description: Cancellation fees associated with this product
          format: double
          title: Cancellation Fee
          type: number
        commerce_entitlements_to_create:
          items:
            additionalProperties: false
            properties:
              expiration_date:
                format: date-time
                oneOf:
                  - x-required: true
                title: Expiration Date
                type: string
              expiration_type:
                enum:
                  - none
                  - relative date
                  - specific date
                title: Expiration Type
                type: string
              quantity:
                description: The quantity
                format: float
                title: Quantity
                type: number
              relative_expiration_date:
                additionalProperties: false
                description: The date the task is due
                oneOf:
                  - x-required: true
                properties:
                  number:
                    description: The unit of time
                    format: float
                    minimum: 0
                    oneOf:
                      - {}
                    title: Number
                    type: number
                  position:
                    description: How the unit relates to the reference date
                    enum:
                      - after
                      - before
                      - 'on'
                    title: Position
                    type: string
                  relative_to:
                    enum:
                      - the beginning of the month
                      - the beginning of the quarter
                      - the beginning of the week
                      - the beginning of the year
                      - the end of the month
                      - the end of the quarter
                      - the end of the week
                      - the end of the year
                      - the reference date
                    title: Relative To
                    type: string
                  unit_of_time:
                    enum:
                      - days
                      - months
                      - weeks
                      - years
                    oneOf:
                      - {}
                    title: Unit Of Time
                    type: string
                required:
                  - number
                  - position
                  - relative_to
                  - unit_of_time
                title: Relative Expiration Date
                type: object
              type_id:
                description: The type of entitlement
                title: Type
                type: string
            required:
              - expiration_type
              - type_id
            type: object
          type: array
        coupon_codes:
          items:
            additionalProperties: false
            properties:
              coupon_code_generation_process_id:
                description: The process by which the coupons are generated
                title: Coupon Code Generation Process
                type: string
              coupon_code_type:
                enum:
                  - multi use
                  - single use
                title: Coupon Code Type
                type: string
              coupon_id:
                title: Coupon
                type: string
              coupon_type:
                title: Coupon Type
                type: string
              expiration_date:
                format: date-time
                oneOf:
                  - x-required: true
                title: Expiration Date
                type: string
              expiration_type:
                enum:
                  - none
                  - relative date
                  - specific date
                title: Expiration Type
                type: string
              maximum_number_of_total_uses:
                description: The maximum number of total uses
                minimum: 1
                oneOf:
                  - enum:
                      - 1
                    x-required: true
                title: Maximum Number Of Total Uses
                type: integer
              maximum_number_of_uses_per_customer:
                description: The maximum number of total uses for a given customer
                minimum: 1
                oneOf:
                  - enum:
                      - 1
                    x-required: true
                title: Maximum Number Of Uses Per Customer
                type: integer
              quantity:
                description: The number of coupons to generate
                maximum: 250
                title: Quantity
                type: integer
              relative_expiration_date:
                additionalProperties: false
                description: Expiration date relative to purchase
                oneOf:
                  - x-required: true
                properties:
                  number:
                    description: The unit of time
                    format: float
                    minimum: 0
                    oneOf:
                      - {}
                    title: Number
                    type: number
                  position:
                    description: How the unit relates to the reference date
                    enum:
                      - after
                      - before
                      - 'on'
                    title: Position
                    type: string
                  relative_to:
                    enum:
                      - the beginning of the month
                      - the beginning of the quarter
                      - the beginning of the week
                      - the beginning of the year
                      - the end of the month
                      - the end of the quarter
                      - the end of the week
                      - the end of the year
                      - the reference date
                    title: Relative To
                    type: string
                  unit_of_time:
                    enum:
                      - days
                      - months
                      - weeks
                      - years
                    oneOf:
                      - {}
                    title: Unit Of Time
                    type: string
                required:
                  - number
                  - position
                  - relative_to
                  - unit_of_time
                title: Relative Expiration Date
                type: object
              restrict_to_contact:
                description: >-
                  If true, the code generated is restricted to the contact who
                  made the purchase
                title: Restrict To Contact
                type: boolean
              restrict_to_organization:
                description: >-
                  If true, the code generated is restricted to the organization
                  made the purchase
                title: Restrict To Organization
                type: boolean
            required:
              - coupon_code_generation_process_id
              - coupon_code_type
              - coupon_id
              - coupon_type
              - quantity
            type: object
          minItems: 1
          type: array
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        custom_pricing_options:
          additionalProperties: false
          properties:
            lambda_function_id:
              description: The custom lambda function to use
              title: Lambda Function
              type: string
          required:
            - lambda_function_id
          title: Custom Pricing Options
          type: object
        document_entitlements_to_create:
          items:
            additionalProperties: false
            properties:
              expiration_date:
                format: date-time
                oneOf:
                  - x-required: true
                title: Expiration Date
                type: string
              expiration_type:
                enum:
                  - none
                  - relative date
                  - specific date
                title: Expiration Type
                type: string
              file_cabinet_id:
                description: The file cabinet
                title: File Cabinet
                type: string
              item_id:
                description: The item
                title: Item
                type: string
              library_path:
                description: >-
                  The optional path that items will be mounted onto the digital
                  library
                title: Library Path
                type: string
              relative_expiration_date:
                additionalProperties: false
                description: The date the task is due
                oneOf:
                  - x-required: true
                properties:
                  number:
                    description: The unit of time
                    format: float
                    minimum: 0
                    oneOf:
                      - {}
                    title: Number
                    type: number
                  position:
                    description: How the unit relates to the reference date
                    enum:
                      - after
                      - before
                      - 'on'
                    title: Position
                    type: string
                  relative_to:
                    enum:
                      - the beginning of the month
                      - the beginning of the quarter
                      - the beginning of the week
                      - the beginning of the year
                      - the end of the month
                      - the end of the quarter
                      - the end of the week
                      - the end of the year
                      - the reference date
                    title: Relative To
                    type: string
                  unit_of_time:
                    enum:
                      - days
                      - months
                      - weeks
                      - years
                    oneOf:
                      - {}
                    title: Unit Of Time
                    type: string
                required:
                  - number
                  - position
                  - relative_to
                  - unit_of_time
                title: Relative Expiration Date
                type: object
            required:
              - expiration_type
              - file_cabinet_id
            type: object
          type: array
        enable_bulk_pricing:
          description: Whether or not bulk pricing is enabled
          title: Enable Bulk Pricing
          type: boolean
        enable_bundled_products:
          description: Whether to enable bundled products
          title: Enable Bundled Products
          type: boolean
        enable_cancellation_fees:
          description: Whether or not cancellation fees are applicable
          title: Enable Cancellation Fees
          type: boolean
        enable_commerce_entitlement_creation:
          description: >-
            If set, document entitlements will be created to access folders or
            documents
          title: Enable Commerce Entitlement Creation
          type: boolean
        enable_coupon_code_generation:
          description: If true, purchasing this product will generate coupons
          title: Enable Coupon Code Generation
          type: boolean
        enable_custom_pricing:
          description: >-
            If set, the order engine will call out to a custom lambda function
            for custom/complex pricing
          title: Enable Custom Pricing
          type: boolean
        enable_document_entitlement_creation:
          description: >-
            If set, document entitlements will be created to access folders or
            documents
          title: Enable Document Entitlement Creation
          type: boolean
        enable_product_confirmation_email:
          description: If enabled, a custom email goes out whenever this product is ordered
          title: Enable Product Confirmation Email
          type: boolean
        enable_purchase_limits:
          description: If true, purchase limits are in place for this product
          title: Enable Purchase Limits
          type: boolean
        enable_purchasing_eligibility:
          description: If set, purchases of this merchandise are restricted
          title: Enable Purchasing Eligibility
          type: boolean
        enable_special_prices:
          description: Whether to enable special pricing logic
          title: Enable Special Prices
          type: boolean
        enable_task_generation:
          description: If set, tasks will be generated
          title: Enable Task Generation
          type: boolean
        fund_id:
          description: The fund to which this product belongs
          title: Fund
          type: string
        hide_from_portal:
          description: If set, this product should not be shown in the portal
          title: Hide From Portal
          type: boolean
        id:
          description: The unique, string identifier of this miscellaneous product
          pattern: ^[\w:|-]+$
          title: ID
          type: string
        installment_plan_options:
          items:
            additionalProperties: false
            properties:
              additional_cost:
                description: The additional cost of the installment plan
                format: double
                title: Additional Cost
                type: number
              installment_plan_id:
                description: The installment plan that this product supports
                title: Installment Plan
                type: string
              is_default:
                description: Whether this is the default installment plan option
                title: Is Default
                type: boolean
            required:
              - installment_plan_id
            type: object
          minItems: 1
          type: array
        is_active:
          description: Whether this product is active/used
          title: Is Active
          type: boolean
        name:
          description: The name of the miscellaneous product
          title: Name
          type: string
        notes:
          description: Notes
          title: Notes
          type: string
        portal_options:
          additionalProperties: false
          properties:
            available_from:
              description: The date from which this product should be available
              format: date-time
              title: Available From
              type: string
            available_until:
              description: The date until which this product should be available
              format: date-time
              title: Available Until
              type: string
          title: Portal Options
          type: object
        product_confirmation_email_options:
          additionalProperties: false
          properties:
            product_confirmation_email_id:
              oneOf:
                - x-required: true
              title: Product Confirmation Email
              type: string
            product_specific_email:
              additionalProperties: false
              oneOf:
                - x-required: true
              properties:
                bcc:
                  description: Anyone that should be bcc'ed on the email
                  title: Bcc
                  type: string
                body:
                  description: The email body
                  title: Body
                  type: string
                cc:
                  description: Anyone that should be cc'ed on the email
                  title: Cc
                  type: string
                from:
                  description: From email address
                  title: From
                  type: string
                from_name:
                  description: From name
                  title: From Name
                  type: string
                reply_to:
                  description: The reply to
                  title: Reply To
                  type: string
                subject:
                  description: The email subject
                  title: Subject
                  type: string
              required:
                - body
                - subject
              title: Product Specific Email
              type: object
            type:
              enum:
                - product specific
                - shared
              title: Type
              type: string
          title: Product Confirmation Email Options
          type: object
        publish_to_portal:
          description: Whether or not this product should be available in the portal
          title: Publish To Portal
          type: boolean
        purchase_limits:
          additionalProperties: false
          properties:
            error_message:
              description: The error message to show
              title: Error Message
              type: string
            maximum:
              description: The maximum
              format: float
              title: Maximum
              type: number
            relative_time_window:
              additionalProperties: false
              description: the time window
              oneOf:
                - x-required: true
              properties:
                number:
                  description: The unit of time
                  format: float
                  minimum: 0
                  oneOf:
                    - {}
                  title: Number
                  type: number
                position:
                  description: How the unit relates to the reference date
                  enum:
                    - after
                    - before
                    - 'on'
                  title: Position
                  type: string
                relative_to:
                  enum:
                    - the beginning of the month
                    - the beginning of the quarter
                    - the beginning of the week
                    - the beginning of the year
                    - the end of the month
                    - the end of the quarter
                    - the end of the week
                    - the end of the year
                    - the reference date
                  title: Relative To
                  type: string
                unit_of_time:
                  enum:
                    - days
                    - months
                    - weeks
                    - years
                  oneOf:
                    - {}
                  title: Unit Of Time
                  type: string
              required:
                - number
                - position
                - relative_to
                - unit_of_time
              title: Relative Time Window
              type: object
            time_period:
              enum:
                - all time
                - sliding time window
              title: Time Period
              type: string
            type:
              enum:
                - per customer
              title: Type
              type: string
          required:
            - maximum
            - time_period
            - type
          title: Purchase Limits
          type: object
        purchasing_eligibility_criteria:
          title: Purchasing Eligibility Criteria
          type: object
        special_prices:
          items:
            additionalProperties: false
            properties:
              criteria:
                title: Criteria
                type: object
              enable_formula:
                description: >-
                  if set, a formula is used to calculate the price. If the
                  formula fails, the price is used
                title: Enable Formula
                type: boolean
              formula:
                description: The formula evaluated using the expr-eval npm package
                oneOf:
                  - x-required: true
                title: Formula
                type: string
              name:
                title: Name
                type: string
              price:
                format: float
                title: Price
                type: number
            required:
              - criteria
              - price
            type: object
          minItems: 1
          type: array
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        tasks_to_generate:
          items:
            additionalProperties: false
            properties:
              assignee_type:
                enum:
                  - assignment role
                  - queue
                  - user
                title: Assignee Type
                type: string
              assignment_role_id:
                description: The assignment role that should receive the ask
                oneOf:
                  - x-required: true
                title: Assignment Role
                type: string
              description:
                description: A description
                title: Description
                type: string
              due_date_type:
                description: Whether there is a due date
                enum:
                  - none
                  - relative date
                  - specific date
                title: Due Date Type
                type: string
              name:
                description: The name of the task
                title: Name
                type: string
              notify_assignees:
                description: Notify assignee when the task is created
                title: Notify Assignees
                type: boolean
              priority:
                enum:
                  - high
                  - low
                  - normal
                  - urgent
                title: Priority
                type: string
              queue_id:
                description: The queue that should be assigned the ask
                oneOf:
                  - x-required: true
                title: Queue
                type: string
              relative_due_date:
                additionalProperties: false
                description: The date the task is due
                oneOf:
                  - x-required: true
                properties:
                  number:
                    description: The unit of time
                    format: float
                    minimum: 0
                    oneOf:
                      - {}
                    title: Number
                    type: number
                  position:
                    description: How the unit relates to the reference date
                    enum:
                      - after
                      - before
                      - 'on'
                    title: Position
                    type: string
                  relative_to:
                    enum:
                      - the beginning of the month
                      - the beginning of the quarter
                      - the beginning of the week
                      - the beginning of the year
                      - the end of the month
                      - the end of the quarter
                      - the end of the week
                      - the end of the year
                      - the reference date
                    title: Relative To
                    type: string
                  unit_of_time:
                    enum:
                      - days
                      - months
                      - weeks
                      - years
                    oneOf:
                      - {}
                    title: Unit Of Time
                    type: string
                required:
                  - number
                  - position
                  - relative_to
                  - unit_of_time
                title: Relative Due Date
                type: object
              specific_due_date:
                format: date-time
                oneOf:
                  - x-required: true
                title: Specific Due Date
                type: string
              type_id:
                description: The type of task
                title: Type
                type: string
              user_id:
                description: The user that should be assigned the ask
                oneOf:
                  - x-required: true
                title: User
                type: string
            required:
              - assignee_type
              - due_date_type
              - name
              - type_id
            type: object
          type: array
        type:
          description: The product type
          enum:
            - fundraising-products
          title: Type
          type: string
      required:
        - bulk_pricing_rules
        - bundled_products
        - business_unit_id
        - coupon_codes
        - custom_pricing_options
        - fund_id
        - id
        - installment_plan_options
        - name
        - product_confirmation_email_options
        - purchase_limits
        - special_prices
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    RecurringGift:
      additionalProperties: false
      properties:
        amount:
          description: The total amount of the gift
          format: float
          title: Amount
          type: number
        appeal_id:
          description: The appeal
          title: Appeal
          type: string
        campaign_id:
          description: The campaign
          title: Campaign
          type: string
        contact_id:
          description: The rolodex contact id for the gift giver
          title: Contact
          type: string
        currency_code:
          description: The currency code of the gift
          title: Currency Code
          type: string
        currency_symbol:
          description: Currency
          title: Currency Symbol
          type: string
        date:
          description: The initial date of the recurring gift
          title: Date
          type: string
        donor_id:
          description: The donor ID
          title: Donor
          type: string
        donor_type:
          description: The donor type for the gift
          enum:
            - contact
            - organization
          title: Donor Type
          type: string
        end_at:
          description: The date at which this recurring gift should end
          title: End At
          type: string
        frequency:
          enum:
            - annually
            - monthly
            - quarterly
          title: Frequency
          type: string
        fund_id:
          description: The fund ID for this recurring gift
          title: Fund
          type: string
        id:
          description: The ID of the target gift
          pattern: ^[\w:|-]+$
          title: ID
          type: string
        last_gift_id:
          description: The last gift created by this recurring gift
          title: Last Gift
          type: string
        last_processing_date:
          description: The last time this recurring gift was processed
          format: date-time
          title: Last Processing Date
          type: string
        next_gift_date:
          description: 'The next date that this should be gift should be processed '
          title: Next Gift Date
          type: string
        notes:
          description: Notes for the recurring gift
          title: Notes
          type: string
        number:
          description: 'The recurring gift #'
          format: float
          title: Number
          type: number
        order_id:
          description: The originating gift order
          title: Order
          type: string
        organization_id:
          description: The organization id associated with this gift
          title: Organization
          type: string
        payment_info:
          additionalProperties: false
          description: Payment information for the recurring gift
          properties:
            card_expiration:
              description: The expiration date of the card
              title: Card Expiration
              type: string
            card_type:
              description: The type of card being used, or CHECK if electronic check
              enum:
                - american express
                - discover
                - electronic check
                - mastercard
                - other
                - visa
              title: Card Type
              type: string
            merchant_account_tokens:
              items:
                additionalProperties: false
                properties:
                  merchant_account_id:
                    description: The merchant account id
                    title: Merchant Account
                    type: string
                  token:
                    description: The token representing the card/electronic check info
                    title: Token
                    type: string
                required:
                  - merchant_account_id
                  - token
                type: object
              minItems: 1
              type: array
            payment_account:
              description: The masked payment account information
              title: Payment Account
              type: string
            payment_origin:
              description: Whether or not this is a saved payment method
              enum:
                - ad hoc
                - saved
                - single token
              title: Payment Origin
              type: string
            token:
              description: For integrated payments, the single token
              title: Token
              type: string
            type:
              description: The type of payment
              enum:
                - credit card
                - electronic check
              title: Type
              type: string
          required:
            - payment_origin
            - type
          title: Payment Info
          type: object
        status:
          enum:
            - active
            - cancelled
            - completed
            - payment error
            - suspended
          title: Status
          type: string
        suspended_until:
          description: If suspended, the date at which the suspension should be lifted
          title: Suspended Until
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        total_amount_given:
          description: The total amount given in this recurring gift
          format: float
          title: Total Amount Given
          type: number
        total_number_of_gifts:
          description: The total amount number of gifts given in this recurring gift
          format: float
          title: Total Number Of Gifts
          type: number
      required:
        - amount
        - contact_id
        - date
        - donor_id
        - donor_type
        - frequency
        - fund_id
        - id
        - next_gift_date
        - order_id
        - organization_id
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    RecurringGiftSearchParameters:
      additionalProperties: false
      properties:
        status:
          items:
            type: string
          title: Status
          type: array
      type: object
    RecurringGiftSearchResults:
      additionalProperties: false
      properties:
        status:
          title: Status
          type: string
      type: object
    Setting:
      additionalProperties: false
      properties:
        allow_customer_to_choose_installment_plan:
          description: If true, the customer can choose their installment plan
          title: Allow Customer To Choose Installment Plan
          type: boolean
        apply_soft_credits_to_relationships:
          description: Whether or not to automatically apply soft credits to relationships
          title: Apply Soft Credits To Relationships
          type: boolean
        automatic_donor_club_assignment:
          enum:
            - by lifetime giving
            - by recent giving
            - disabled
          title: Automatic Donor Club Assignment
          type: string
        automatically_create_gifts_from_donations:
          description: If true, gifts are automatically created from donations
          title: Automatically Create Gifts From Donations
          type: boolean
        bank_account_id:
          description: >-
            The default bank account that the store should use to receive
            payments
          title: Bank Account
          type: string
        bill_my_organization_options:
          additionalProperties: false
          properties:
            billing_address:
              enum:
                - do not show
                - optional
                - required
              title: Billing Address
              type: string
            purchase_order_number:
              enum:
                - do not show
                - optional
                - required
              title: Purchase Order Number
              type: string
            reference_number:
              description: 'The reference #'
              title: Reference Number
              type: string
          title: Bill My Organization Options
          type: object
        bill_my_parent_organization_options:
          additionalProperties: false
          properties:
            billing_address:
              enum:
                - do not show
                - optional
                - required
              title: Billing Address
              type: string
            purchase_order_number:
              enum:
                - do not show
                - optional
                - required
              title: Purchase Order Number
              type: string
            reference_number:
              description: 'The reference #'
              title: Reference Number
              type: string
          title: Bill My Parent Organization Options
          type: object
        business_unit_id:
          description: The business unit of the store
          title: Business Unit
          type: string
        cancellation_fee_product_id:
          description: The ID of the product used for cancellation fees
          title: Cancellation Fee Product
          type: string
        checkout_donation_options:
          additionalProperties: false
          properties:
            simple_checkout_donation_options:
              additionalProperties: false
              oneOf:
                - x-required: true
              properties:
                allow_user_to_specify_custom_amount:
                  description: If set, the user can specify their own custom donation
                  title: Allow User To Specify Custom Amount
                  type: boolean
                donation_ask_text:
                  description: The text shown to the user when making the donation
                  title: Donation Ask Text
                  type: string
                donation_denominations:
                  items:
                    format: double
                    type: number
                  title: Donation Denominations
                  type: array
                donation_information:
                  description: Additional information about the donation
                  title: Donation Information
                  type: string
                donation_product_id:
                  description: The misc product that should be used
                  title: Donation Product
                  type: string
                override_donation_denominations:
                  description: >-
                    If set, donation denominations are specified here and the
                    defaults are not used
                  title: Override Donation Denominations
                  type: boolean
                suggested_donation:
                  description: A suggested donation
                  format: double
                  title: Suggested Donation
                  type: number
              required:
                - donation_product_id
              title: Simple Checkout Donation Options
              type: object
            type:
              enum:
                - simple
              title: Type
              type: string
          title: Checkout Donation Options
          type: object
        credit_card_minimum_range_end:
          description: If set, the maximum amount for which credit cards can be taken
          format: float
          title: Credit Card Minimum Range End
          type: number
        credit_card_minimum_range_start:
          description: If set, the minimum amount for which credit cards can be taken
          format: float
          title: Credit Card Minimum Range Start
          type: number
        credit_card_mode:
          description: Determines whether or not credit cards are accepted
          enum:
            - disabled
            - enabled
            - range
          title: Credit Card Mode
          type: string
        credit_card_processing_fee_mode:
          description: Determines how credit card processing fees should be handled
          enum:
            - charge
            - do not charge
            - prompt user
          title: Credit Card Processing Fee Mode
          type: string
        credit_card_processing_fee_options:
          additionalProperties: false
          properties:
            fee_percentage:
              description: 'The fee percentage to charge for credit card processing '
              format: float
              title: Fee Percentage
              type: number
            maximum_fee:
              description: >-
                The maximum amount to charge. If the fee comes out to be MORE
                than this, than this amount will be charged
              format: float
              title: Maximum Fee
              type: number
            minimum_fee:
              description: >-
                The minimum amount to charge. If the fee comes out to be less
                than this, than this amount will be charged
              format: float
              title: Minimum Fee
              type: number
            product_id:
              description: The misc product to use for the credit card processing
              title: Product
              type: string
            prompt_sub_text:
              description: >-
                Additional text that is shown to the user when asking if they
                want to pay for credit card processing fees. If not set a
                default will be used
              title: Prompt Sub Text
              type: string
            prompt_text:
              description: >-
                The checkbox text to show the user when asking if they want to
                pay for credit card processing fees. If not set a default will
                be used
              title: Prompt Text
              type: string
          required:
            - fee_percentage
            - product_id
          title: Credit Card Processing Fee Options
          type: object
        default_fund_id:
          description: The default fund to use for donations
          title: Default Fund
          type: string
        default_giving_process_id:
          description: The default giving process, when non is specified
          title: Default Giving Process
          type: string
        disable_electronic_payment_vaulting:
          description: If set, in the portal people are not allowed to save credit cards
          title: Disable Electronic Payment Vaulting
          type: boolean
        donation_fund_mappings:
          items:
            additionalProperties: false
            properties:
              appeal_id:
                description: The optional appeal
                title: Appeal
                type: string
              campaign_id:
                description: The optional campaign
                title: Campaign
                type: string
              donation_product_id:
                description: The product
                title: Donation Product
                type: string
              fund_id:
                description: The fund
                title: Fund
                type: string
            required:
              - donation_product_id
              - fund_id
            type: object
          minItems: 1
          type: array
        donation_product_giving_process_id:
          description: >-
            The giving process to use for donation products; if not set, the
            default giving process is used
          title: Donation Product Giving Process
          type: string
        donor_club_giving_tiers:
          items:
            additionalProperties: false
            properties:
              donor_club_id:
                description: The donor club to assign donors who meet this criteria
                title: Donor Club
                type: string
              tier_end:
                description: The maximum tier, INCLUSIVE
                format: float
                title: Tier End
                type: number
              tier_start:
                description: The minimum giving tier
                format: float
                title: Tier Start
                type: number
            required:
              - donor_club_id
              - tier_end
              - tier_start
            type: object
          minItems: 1
          type: array
        enable_bill_my_organization:
          description: If set, the user has the option to bill their organization
          title: Enable Bill My Organization
          type: boolean
        enable_bill_my_parent_organization:
          description: >-
            If set, the user has the option to bill their organization's parent
            organization
          title: Enable Bill My Parent Organization
          type: boolean
        enable_donations_at_checkout:
          description: >-
            If selected, users will be prompted to make a donation upon checking
            out
          title: Enable Donations At Checkout
          type: boolean
        enable_electronic_checks:
          description: If set, electronic checks are allowed
          title: Enable Electronic Checks
          type: boolean
        enable_pay_later:
          description: >-
            If set, pay later is enabled on this checkout regardless of product
            settings... if not, the product settings are observed
          title: Enable Pay Later
          type: boolean
        enable_payroll_deduction:
          description: If set, payroll deduction is allowed
          title: Enable Payroll Deduction
          type: boolean
        enable_split_payments:
          description: If set, users are allowed to split payments
          title: Enable Split Payments
          type: boolean
        installment_plan_options:
          items:
            additionalProperties: false
            properties:
              additional_cost:
                description: The additional cost of the installment plan
                format: double
                title: Additional Cost
                type: number
              installment_plan_id:
                description: The installment plan that this product supports
                title: Installment Plan
                type: string
              is_default:
                description: Whether this is the default installment plan option
                title: Is Default
                type: boolean
            required:
              - installment_plan_id
            type: object
          minItems: 1
          type: array
        invoice_payment_terms_id:
          description: The payment terms for invoices; if left blank, default is used
          title: Invoice Payment Terms
          type: string
        invoice_template_id:
          description: The template to use for invoices created during this process
          title: Invoice Template
          type: string
        merchant_account_id:
          description: The merchant account that the store should use to receive payments
          title: Merchant Account
          type: string
        notes:
          description: The notes on the setting
          title: Notes
          type: string
        pay_later_options:
          additionalProperties: false
          properties:
            billing_address:
              enum:
                - do not show
                - optional
                - required
              title: Billing Address
              type: string
            purchase_order_number:
              enum:
                - do not show
                - optional
                - required
              title: Purchase Order Number
              type: string
            reference_number:
              description: 'The reference #'
              title: Reference Number
              type: string
          title: Pay Later Options
          type: object
        preceding_months:
          format: float
          minimum: 1
          title: Preceding Months
          type: number
        public_giving_page_captcha_mode:
          description: The capatcha mode for public giving
          enum:
            - disabled
            - v3
          title: Public Giving Page Captcha Mode
          type: string
        public_giving_page_captcha_options:
          additionalProperties: false
          properties:
            site_key:
              description: Site key
              title: Site Key
              type: string
          required:
            - site_key
          title: Public Giving Page Captcha Options
          type: object
        restocking_fee_product_id:
          description: The ID of the product used for restocking fees
          title: Restocking Fee Product
          type: string
        soft_credit_relationships:
          items:
            additionalProperties: false
            properties:
              direction:
                enum:
                  - both
                  - left to right
                  - right to left
                title: Direction
                type: string
              percentage:
                description: The percentage to attribute gifts
                format: float
                maximum: 100
                minimum: 0
                title: Percentage
                type: number
              relationship_type_id:
                description: The relationship type
                title: Relationship Type
                type: string
            required:
              - direction
              - percentage
              - relationship_type_id
            type: object
          minItems: 1
          type: array
        special_instructions:
          description: Instructions shown to the user
          title: Special Instructions
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        use_pro_forma_invoices:
          description: Whether to use pro forma invoices when user elects to pay later
          title: Use Pro Forma Invoices
          type: boolean
      required:
        - bank_account_id
        - business_unit_id
        - checkout_donation_options
        - credit_card_processing_fee_options
        - default_fund_id
        - default_giving_process_id
        - donation_fund_mappings
        - donor_club_giving_tiers
        - installment_plan_options
        - merchant_account_id
        - preceding_months
        - public_giving_page_captcha_options
        - soft_credit_relationships
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    StandardQueryDefinition:
      additionalProperties: false
      properties:
        category:
          title: Category
          type: string
        definition:
          additionalProperties: false
          properties: {}
          title: Definition
          type: object
        id:
          title: ID
          type: string
        name:
          title: Name
          type: string
      type: object
    Statistic:
      additionalProperties: false
      properties:
        dataSource:
          description: The datasource used to generate this value
          title: Datasource
          type: string
        error:
          description: If the cache encountered an error, this is it
          title: Error
          type: string
        id:
          description: The unique, string identifier of this statistic
          pattern: ^[\w-:%\/]+$
          title: ID
          type: string
        name:
          description: The name of the statistic
          title: Name
          type: string
        status:
          description: The description of the statistic
          enum:
            - error
            - processing
            - valid
          title: Status
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        value:
          description: The numeric value of the statistic
          format: float
          title: Value
          type: number
        value_difference_numeric:
          description: >-
            When a value & previous value is present, this is the numeric
            difference
          format: float
          title: Value Difference Numeric
          type: number
        value_difference_percentage:
          description: >-
            When a value & previous value is present, this is the percentage
            difference
          format: float
          title: Value Difference Percentage
          type: number
        value_for_previous_period:
          description: >-
            For statistics that can compare values from a previous period, this
            is the value
          format: float
          title: Value For Previous Period
          type: number
        values:
          description: If the stat hs values in a row form, this variable contains it
          items:
            additionalProperties: false
            properties: {}
            type: object
          type: array
      required:
        - id
        - name
        - status
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
        - value
      type: object
    StepFunctionExecutionToken:
      additionalProperties: false
      properties:
        executionArn:
          description: The arn of the execution
          title: Executionarn
          type: string
        notification_channel:
          description: The id of the channel where progress updates will be posted
          title: Notification Channel
          type: string
        notification_publishKey:
          description: >-
            The publish key for the channel where progress updates will be
            posted
          title: Notification Publishkey
          type: string
        notification_subscribeKey:
          description: >-
            The subscribe key for the channel where progress updates will be
            posted
          title: Notification Subscribekey
          type: string
        start_date:
          description: The start date of the execution
          format: date-time
          title: Start Date
          type: string
      required:
        - executionArn
      type: object
  securitySchemes:
    knox-authorizer:
      bearerFormat: JWT
      scheme: bearer
      type: http
info:
  description: Service providing access to Fundraising resources and features
  title: Fundraising
  version: v1-2025-04-18
openapi: 3.0.0
paths:
  /appeals/{tenantId}:
    get:
      description: This method will scan all appeals and and return them to the caller.
      operationId: listAppeals
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/Appeal'
                type: array
          description: The appealswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the appeals in the system.
      tags:
        - Appeals
    post:
      description: >-
        This method will auto-generate an ID and create a new appeal. If an ID
        is specified for the appeal, an error will be thrown.
      operationId: createAppeal
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Appeal'
        description: The appeal that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Appeal'
          description: The appeal was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The appeal you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The appeal could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add appeal based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new appeal record that does not already exist.
      tags:
        - Appeals
  /appeals/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The appeal could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve appeal based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Appeals
  /appeals/{tenantId}/campaign/{campaign_id}:
    get:
      description: Returns a list of records with the specified campaign_id
      operationId: listAppealsByCampaignId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: campaign_id
          required: true
          description: The campaign_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListAppealsResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified campaign_id
      tags:
        - Appeals
  /appeals/{tenantId}/search:
    post:
      description: Searches for appeals using predefined parameters
      operationId: searchForAppeals
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key for the search, for paging support
          schema:
            type: string
        - in: query
          name: fieldsToReturn
          required: false
          description: '  The fields that you want to retrieve; if omitted, the entire object is returned'
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AppealSearchParameters'
        description: The appeal that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PagedAppealSearchResults'
          description: The appeal search was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The appeal you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The appeal could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add appeal based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Searches for appeals using predefined parameters
      tags:
        - Appeals
  /appeals/{tenantId}/{id}:
    delete:
      description: This method will delete a appeal with the specified ID.
      operationId: deleteAppeal
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the appeal to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The appeal was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The appeal could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The appeal could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to delete appeal based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a appeal from the system by its ID.
      tags:
        - Appeals
    get:
      description: >-
        This method will look up a appeal by the specified ID and return it
        back.
      operationId: getAppeal
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the appeal to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Appeal'
          description: The appeal was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The appeal could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve appeal based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a appeal from the system by its ID.
      tags:
        - Appeals
    patch:
      description: >-
        This method will patch an existing appeal with the specified ID, using
        the HTTP PATCH specification.
      operationId: patchAppeal
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the appeal to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Appeal'
          description: The appeal was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The appeal could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The appeal could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve appeal based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a appeal with the specified ID.
      tags:
        - Appeals
    put:
      description: This method will update an existing appeal with the specified ID.
      operationId: updateAppeal
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the appeal to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Appeal'
        description: The updated appeal that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Appeal'
          description: The appeal was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The appeal supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The appeal could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The appeal could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve appeal based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a appeal with the specified ID.
      tags:
        - Appeals
  /billingTemplates/{tenantId}:
    get:
      description: >-
        This method will scan all billing templates and and return them to the
        caller.
      operationId: listBillingTemplates
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/BillingTemplate'
                type: array
          description: The billing templateswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the billing templates in the system.
      tags:
        - Billing Templates
    post:
      description: >-
        This method will auto-generate an ID and create a new billing template.
        If an ID is specified for the billing template, an error will be thrown.
      operationId: createBillingTemplate
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BillingTemplate'
        description: The billing template that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BillingTemplate'
          description: The billing template was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The billing template you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The billing template could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to add billing template based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new billing template record that does not already exist.
      tags:
        - Billing Templates
  /billingTemplates/{tenantId}/fromTemplate/{templateId}/{referenceDate}:
    get:
      operationId: generateBillingRunFromTemplate
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: templateId
          required: true
          description: The template
          schema:
            type: string
        - in: path
          name: referenceDate
          required: true
          description: The reference date
          schema:
            type: string
      responses:
        '200':
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Generates a billing run from a template
      tags:
        - Billing Templates
  /billingTemplates/{tenantId}/{id}:
    delete:
      description: This method will delete a billing template with the specified ID.
      operationId: deleteBillingTemplate
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the billing template to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The billing template was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The billing template could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The billing template could not be deleted because other objects
            refers to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete billing template based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a billing template from the system by its ID.
      tags:
        - Billing Templates
    get:
      description: >-
        This method will look up a billing template by the specified ID and
        return it back.
      operationId: getBillingTemplate
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the billing template to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BillingTemplate'
          description: The billing template was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The billing template could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve billing template based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a billing template from the system by its ID.
      tags:
        - Billing Templates
    patch:
      description: >-
        This method will patch an existing billing template with the specified
        ID, using the HTTP PATCH specification.
      operationId: patchBillingTemplate
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the billing template to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BillingTemplate'
          description: The billing template was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The billing template could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The billing template could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve billing template based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a billing template with the specified ID.
      tags:
        - Billing Templates
    put:
      description: >-
        This method will update an existing billing template with the specified
        ID.
      operationId: updateBillingTemplate
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the billing template to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BillingTemplate'
        description: The updated billing template that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BillingTemplate'
          description: The billing template was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The billing template supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The billing template could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The billing template could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve billing template based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a billing template with the specified ID.
      tags:
        - Billing Templates
  /campaigns/{tenantId}:
    post:
      description: >-
        This method will auto-generate an ID and create a new campaign. If an ID
        is specified for the campaign, an error will be thrown.
      operationId: createCampaign
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Campaign'
        description: The campaign that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Campaign'
          description: The campaign was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The campaign you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The campaign could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add campaign based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new campaign record that does not already exist.
      tags:
        - Campaigns
  /campaigns/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The campaign could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve campaign based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Campaigns
  /campaigns/{tenantId}/search:
    post:
      description: Searches for campaigns using predefined parameters
      operationId: searchForCampaigns
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key for the search, for paging support
          schema:
            type: string
        - in: query
          name: fieldsToReturn
          required: false
          description: '  The fields that you want to retrieve; if omitted, the entire object is returned'
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CampaignSearchParameters'
        description: The campaign that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PagedCampaignSearchResults'
          description: The campaign search was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The campaign you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The campaign could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add campaign based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Searches for campaigns using predefined parameters
      tags:
        - Campaigns
  /campaigns/{tenantId}/{id}:
    delete:
      description: This method will delete a campaign with the specified ID.
      operationId: deleteCampaign
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the campaign to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The campaign was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The campaign could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The campaign could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to delete campaign based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a campaign from the system by its ID.
      tags:
        - Campaigns
    get:
      description: >-
        This method will look up a campaign by the specified ID and return it
        back.
      operationId: getCampaign
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the campaign to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Campaign'
          description: The campaign was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The campaign could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve campaign based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a campaign from the system by its ID.
      tags:
        - Campaigns
    patch:
      description: >-
        This method will patch an existing campaign with the specified ID, using
        the HTTP PATCH specification.
      operationId: patchCampaign
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the campaign to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Campaign'
          description: The campaign was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The campaign could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The campaign could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve campaign based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a campaign with the specified ID.
      tags:
        - Campaigns
    put:
      description: This method will update an existing campaign with the specified ID.
      operationId: updateCampaign
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the campaign to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Campaign'
        description: The updated campaign that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Campaign'
          description: The campaign was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The campaign supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The campaign could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The campaign could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve campaign based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a campaign with the specified ID.
      tags:
        - Campaigns
  /donorClubs/{tenantId}:
    get:
      description: This method will scan all donor clubs and and return them to the caller.
      operationId: listDonorClubs
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/DonorClub'
                type: array
          description: The donor clubswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the donor clubs in the system.
      tags:
        - Donor Clubs
    post:
      description: >-
        This method will auto-generate an ID and create a new donor club. If an
        ID is specified for the donor club, an error will be thrown.
      operationId: createDonorClub
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DonorClub'
        description: The donor club that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DonorClub'
          description: The donor club was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The donor club you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The donor club could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add donor club based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new donor club record that does not already exist.
      tags:
        - Donor Clubs
  /donorClubs/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The donor club could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve donor club based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Donor Clubs
  /donorClubs/{tenantId}/{id}:
    delete:
      description: This method will delete a donor club with the specified ID.
      operationId: deleteDonorClub
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the donor club to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The donor club was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The donor club could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The donor club could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete donor club based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a donor club from the system by its ID.
      tags:
        - Donor Clubs
    get:
      description: >-
        This method will look up a donor club by the specified ID and return it
        back.
      operationId: getDonorClub
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the donor club to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DonorClub'
          description: The donor club was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The donor club could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve donor club based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a donor club from the system by its ID.
      tags:
        - Donor Clubs
    patch:
      description: >-
        This method will patch an existing donor club with the specified ID,
        using the HTTP PATCH specification.
      operationId: patchDonorClub
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the donor club to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DonorClub'
          description: The donor club was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The donor club could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The donor club could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve donor club based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a donor club with the specified ID.
      tags:
        - Donor Clubs
    put:
      description: This method will update an existing donor club with the specified ID.
      operationId: updateDonorClub
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the donor club to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DonorClub'
        description: The updated donor club that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DonorClub'
          description: The donor club was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The donor club supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The donor club could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The donor club could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve donor club based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a donor club with the specified ID.
      tags:
        - Donor Clubs
  /donorLevels/{tenantId}:
    get:
      description: >-
        This method will scan all donor levels and and return them to the
        caller.
      operationId: listDonorLevels
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/DonorLevel'
                type: array
          description: The donor levelswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the donor levels in the system.
      tags:
        - Donor Levels
    post:
      description: >-
        This method will auto-generate an ID and create a new donor level. If an
        ID is specified for the donor level, an error will be thrown.
      operationId: createDonorLevel
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DonorLevel'
        description: The donor level that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DonorLevel'
          description: The donor level was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The donor level you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The donor level could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add donor level based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new donor level record that does not already exist.
      tags:
        - Donor Levels
  /donorLevels/{tenantId}/{id}:
    delete:
      description: This method will delete a donor level with the specified ID.
      operationId: deleteDonorLevel
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the donor level to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The donor level was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The donor level could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The donor level could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete donor level based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a donor level from the system by its ID.
      tags:
        - Donor Levels
    get:
      description: >-
        This method will look up a donor level by the specified ID and return it
        back.
      operationId: getDonorLevel
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the donor level to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DonorLevel'
          description: The donor level was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The donor level could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve donor level based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a donor level from the system by its ID.
      tags:
        - Donor Levels
    patch:
      description: >-
        This method will patch an existing donor level with the specified ID,
        using the HTTP PATCH specification.
      operationId: patchDonorLevel
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the donor level to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DonorLevel'
          description: The donor level was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The donor level could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The donor level could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve donor level based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a donor level with the specified ID.
      tags:
        - Donor Levels
    put:
      description: This method will update an existing donor level with the specified ID.
      operationId: updateDonorLevel
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the donor level to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DonorLevel'
        description: The updated donor level that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DonorLevel'
          description: The donor level was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The donor level supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The donor level could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The donor level could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve donor level based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a donor level with the specified ID.
      tags:
        - Donor Levels
  /donorStatementTemplates/{tenantId}:
    get:
      description: >-
        This method will scan all donor statement templates and and return them
        to the caller.
      operationId: listDonorStatementTemplates
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/DonorStatementTemplate'
                type: array
          description: The donor statement templateswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the donor statement templates in the system.
      tags:
        - Donor Statement Templates
    post:
      description: >-
        This method will auto-generate an ID and create a new donor statement
        template. If an ID is specified for the donor statement template, an
        error will be thrown.
      operationId: createDonorStatementTemplate
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DonorStatementTemplate'
        description: The donor statement template that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DonorStatementTemplate'
          description: The donor statement template was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The donor statement template you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The donor statement template could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to add donor statement template based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: >-
        Creates a new donor statement template record that does not already
        exist.
      tags:
        - Donor Statement Templates
  /donorStatementTemplates/{tenantId}/{id}:
    delete:
      description: >-
        This method will delete a donor statement template with the specified
        ID.
      operationId: deleteDonorStatementTemplate
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the donor statement template to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The donor statement template was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The donor statement template could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The donor statement template could not be deleted because other
            objects refers to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete donor statement template based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a donor statement template from the system by its ID.
      tags:
        - Donor Statement Templates
    get:
      description: >-
        This method will look up a donor statement template by the specified ID
        and return it back.
      operationId: getDonorStatementTemplate
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the donor statement template to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DonorStatementTemplate'
          description: The donor statement template was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The donor statement template could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve donor statement template based
            on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a donor statement template from the system by its ID.
      tags:
        - Donor Statement Templates
    patch:
      description: >-
        This method will patch an existing donor statement template with the
        specified ID, using the HTTP PATCH specification.
      operationId: patchDonorStatementTemplate
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the donor statement template to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DonorStatementTemplate'
          description: The donor statement template was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The donor statement template could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The donor statement template could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve donor statement template based
            on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a donor statement template with the specified ID.
      tags:
        - Donor Statement Templates
    put:
      description: >-
        This method will update an existing donor statement template with the
        specified ID.
      operationId: updateDonorStatementTemplate
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the donor statement template to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DonorStatementTemplate'
        description: The updated donor statement template that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DonorStatementTemplate'
          description: The donor statement template was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The donor statement template supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The donor statement template could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The donor statement template could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve donor statement template based
            on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a donor statement template with the specified ID.
      tags:
        - Donor Statement Templates
  /donorStatements/{tenantId}:
    post:
      description: >-
        This method will auto-generate an ID and create a new donor statement.
        If an ID is specified for the donor statement, an error will be thrown.
      operationId: createDonorStatement
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DonorStatement'
        description: The donor statement that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DonorStatement'
          description: The donor statement was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The donor statement you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The donor statement could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to add donor statement based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new donor statement record that does not already exist.
      tags:
        - Donor Statements
  /donorStatements/{tenantId}/donor/{donor_type}/{donor_id}:
    get:
      description: Returns a list of records with the specified donor_id
      operationId: listStatementsByDonorId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: donor_type
          required: true
          description: The donor_type to use for record lookup
          schema:
            type: string
        - in: path
          name: donor_id
          required: true
          description: The donor_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListDonorStatementsResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified donor_id
      tags:
        - Donor Statements
  /donorStatements/{tenantId}/{id}:
    delete:
      description: This method will delete a donor statement with the specified ID.
      operationId: deleteDonorStatement
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the donor statement to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The donor statement was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The donor statement could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The donor statement could not be deleted because other objects
            refers to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete donor statement based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a donor statement from the system by its ID.
      tags:
        - Donor Statements
    get:
      description: >-
        This method will look up a donor statement by the specified ID and
        return it back.
      operationId: getDonorStatement
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the donor statement to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DonorStatement'
          description: The donor statement was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The donor statement could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve donor statement based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a donor statement from the system by its ID.
      tags:
        - Donor Statements
    patch:
      description: >-
        This method will patch an existing donor statement with the specified
        ID, using the HTTP PATCH specification.
      operationId: patchDonorStatement
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the donor statement to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DonorStatement'
          description: The donor statement was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The donor statement could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The donor statement could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve donor statement based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a donor statement with the specified ID.
      tags:
        - Donor Statements
    put:
      description: >-
        This method will update an existing donor statement with the specified
        ID.
      operationId: updateDonorStatement
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the donor statement to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DonorStatement'
        description: The updated donor statement that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DonorStatement'
          description: The donor statement was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The donor statement supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The donor statement could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The donor statement could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve donor statement based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a donor statement with the specified ID.
      tags:
        - Donor Statements
  /donors/{tenantId}:
    post:
      description: >-
        This method will auto-generate an ID and create a new donor. If an ID is
        specified for the donor, an error will be thrown.
      operationId: createDonor
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Donor'
        description: The donor that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Donor'
          description: The donor was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The donor you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The donor could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add donor based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new donor record that does not already exist.
      tags:
        - Donors
  /donors/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The donor could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve donor based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Donors
  /donors/{tenantId}/recalculateDonorTotals:
    post:
      description: >-
        Goes through and recalculates all donor totals and automatic donor club
        assignments
      operationId: recalculateDonorTotals
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
      responses:
        '200':
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Recalculate Totals/Donor Clubs
      tags:
        - Donors
  /donors/{tenantId}/search:
    post:
      description: Searches for donors using predefined parameters
      operationId: searchForDonors
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key for the search, for paging support
          schema:
            type: string
        - in: query
          name: fieldsToReturn
          required: false
          description: '  The fields that you want to retrieve; if omitted, the entire object is returned'
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DonorSearchParameters'
        description: The donor that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PagedDonorSearchResults'
          description: The donor search was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The donor you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The donor could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add donor based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Searches for donors using predefined parameters
      tags:
        - Donors
  /donors/{tenantId}/{id}:
    delete:
      description: This method will delete a donor with the specified ID.
      operationId: deleteDonor
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the donor to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The donor was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The donor could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The donor could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to delete donor based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a donor from the system by its ID.
      tags:
        - Donors
    get:
      description: This method will look up a donor by the specified ID and return it back.
      operationId: getDonor
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the donor to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Donor'
          description: The donor was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The donor could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve donor based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a donor from the system by its ID.
      tags:
        - Donors
    patch:
      description: >-
        This method will patch an existing donor with the specified ID, using
        the HTTP PATCH specification.
      operationId: patchDonor
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the donor to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Donor'
          description: The donor was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The donor could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The donor could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve donor based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a donor with the specified ID.
      tags:
        - Donors
    put:
      description: This method will update an existing donor with the specified ID.
      operationId: updateDonor
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the donor to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Donor'
        description: The updated donor that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Donor'
          description: The donor was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The donor supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The donor could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The donor could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve donor based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a donor with the specified ID.
      tags:
        - Donors
  /fundCategories/{tenantId}:
    get:
      description: >-
        This method will scan all fund categories and and return them to the
        caller.
      operationId: listFundCategories
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/FundCategory'
                type: array
          description: The fund categorieswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the fund categories in the system.
      tags:
        - Fund Categories
    post:
      description: >-
        This method will auto-generate an ID and create a new fund category. If
        an ID is specified for the fund category, an error will be thrown.
      operationId: createFundCategory
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FundCategory'
        description: The fund category that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FundCategory'
          description: The fund category was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The fund category you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The fund category could not be saved because it refers to/depends on
            a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to add fund category based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new fund category record that does not already exist.
      tags:
        - Fund Categories
  /fundCategories/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The fund category could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve fund category based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Fund Categories
  /fundCategories/{tenantId}/{id}:
    delete:
      description: This method will delete a fund category with the specified ID.
      operationId: deleteFundCategory
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the fund category to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The fund category was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The fund category could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The fund category could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete fund category based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a fund category from the system by its ID.
      tags:
        - Fund Categories
    get:
      description: >-
        This method will look up a fund category by the specified ID and return
        it back.
      operationId: getFundCategory
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the fund category to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FundCategory'
          description: The fund category was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The fund category could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve fund category based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a fund category from the system by its ID.
      tags:
        - Fund Categories
    patch:
      description: >-
        This method will patch an existing fund category with the specified ID,
        using the HTTP PATCH specification.
      operationId: patchFundCategory
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the fund category to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FundCategory'
          description: The fund category was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The fund category could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The fund category could not be saved because it refers to/depends on
            a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve fund category based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a fund category with the specified ID.
      tags:
        - Fund Categories
    put:
      description: This method will update an existing fund category with the specified ID.
      operationId: updateFundCategory
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the fund category to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FundCategory'
        description: The updated fund category that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FundCategory'
          description: The fund category was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The fund category supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The fund category could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The fund category could not be saved because it refers to/depends on
            a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve fund category based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a fund category with the specified ID.
      tags:
        - Fund Categories
  /funds/{tenantId}:
    get:
      description: This method will scan all funds and and return them to the caller.
      operationId: listFunds
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/Fund'
                type: array
          description: The fundswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the funds in the system.
      tags:
        - Funds
    post:
      description: >-
        This method will auto-generate an ID and create a new fund. If an ID is
        specified for the fund, an error will be thrown.
      operationId: createFund
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Fund'
        description: The fund that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Fund'
          description: The fund was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The fund you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The fund could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add fund based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new fund record that does not already exist.
      tags:
        - Funds
  /funds/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The fund could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve fund based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Funds
  /funds/{tenantId}/{id}:
    delete:
      description: This method will delete a fund with the specified ID.
      operationId: deleteFund
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the fund to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The fund was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The fund could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The fund could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to delete fund based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a fund from the system by its ID.
      tags:
        - Funds
    get:
      description: This method will look up a fund by the specified ID and return it back.
      operationId: getFund
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the fund to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Fund'
          description: The fund was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The fund could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve fund based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a fund from the system by its ID.
      tags:
        - Funds
    patch:
      description: >-
        This method will patch an existing fund with the specified ID, using the
        HTTP PATCH specification.
      operationId: patchFund
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the fund to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Fund'
          description: The fund was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The fund could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The fund could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve fund based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a fund with the specified ID.
      tags:
        - Funds
    put:
      description: This method will update an existing fund with the specified ID.
      operationId: updateFund
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the fund to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Fund'
        description: The updated fund that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Fund'
          description: The fund was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The fund supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The fund could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The fund could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve fund based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a fund with the specified ID.
      tags:
        - Funds
  /giftNotices/{tenantId}:
    get:
      description: >-
        This method will scan all gift notices and and return them to the
        caller.
      operationId: listGiftNotices
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/GiftNotice'
                type: array
          description: The gift noticeswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the gift notices in the system.
      tags:
        - Gift Notices
    post:
      description: >-
        This method will auto-generate an ID and create a new gift notice. If an
        ID is specified for the gift notice, an error will be thrown.
      operationId: createGiftNotice
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GiftNotice'
        description: The gift notice that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GiftNotice'
          description: The gift notice was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The gift notice you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The gift notice could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add gift notice based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new gift notice record that does not already exist.
      tags:
        - Gift Notices
  /giftNotices/{tenantId}/{id}:
    delete:
      description: This method will delete a gift notice with the specified ID.
      operationId: deleteGiftNotice
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the gift notice to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The gift notice was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The gift notice could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The gift notice could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete gift notice based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a gift notice from the system by its ID.
      tags:
        - Gift Notices
    get:
      description: >-
        This method will look up a gift notice by the specified ID and return it
        back.
      operationId: getGiftNotice
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the gift notice to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GiftNotice'
          description: The gift notice was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The gift notice could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve gift notice based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a gift notice from the system by its ID.
      tags:
        - Gift Notices
    patch:
      description: >-
        This method will patch an existing gift notice with the specified ID,
        using the HTTP PATCH specification.
      operationId: patchGiftNotice
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the gift notice to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GiftNotice'
          description: The gift notice was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The gift notice could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The gift notice could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve gift notice based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a gift notice with the specified ID.
      tags:
        - Gift Notices
    put:
      description: This method will update an existing gift notice with the specified ID.
      operationId: updateGiftNotice
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the gift notice to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GiftNotice'
        description: The updated gift notice that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GiftNotice'
          description: The gift notice was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The gift notice supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The gift notice could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The gift notice could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve gift notice based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a gift notice with the specified ID.
      tags:
        - Gift Notices
  /gifts/{tenantId}:
    get:
      description: This method will scan all gifts and and return them to the caller.
      operationId: listGifts
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/Gift'
                type: array
          description: The giftswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the gifts in the system.
      tags:
        - Gifts
    post:
      description: >-
        This method will auto-generate an ID and create a new gift. If an ID is
        specified for the gift, an error will be thrown.
      operationId: createGift
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Gift'
        description: The gift that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Gift'
          description: The gift was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The gift you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The gift could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add gift based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new gift record that does not already exist.
      tags:
        - Gifts
  /gifts/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The gift could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve gift based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Gifts
  /gifts/{tenantId}/contact/{contact_id}:
    get:
      description: Returns a list of records with the specified contact_id
      operationId: listGiftsByContactId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: contact_id
          required: true
          description: The contact_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListGiftsResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified contact_id
      tags:
        - Gifts
  /gifts/{tenantId}/donor/{donor_id}:
    get:
      description: Returns a list of records with the specified donor_id
      operationId: listGiftsByDonorId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: donor_id
          required: true
          description: The donor_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListGiftsResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified donor_id
      tags:
        - Gifts
  /gifts/{tenantId}/generateOrder:
    post:
      description: >-
        This method will examine a fundraising gift and generate an appropriate
        order
      operationId: generateOrder
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GiftPayload'
        description: The gift to generate an order
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                type: object
          description: Conflicts were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The search you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add order based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Generates an order from a fundraising gift
      tags:
        - Gifts
  /gifts/{tenantId}/masterGift/{master_gift_id}:
    get:
      description: Returns a list of records with the specified master_gift_id
      operationId: listGiftsByMasterGiftId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: master_gift_id
          required: true
          description: The master_gift_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListGiftsResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified master_gift_id
      tags:
        - Gifts
  /gifts/{tenantId}/migrateDonationOrders:
    post:
      description: Will migrate all previous orders for donation products
      operationId: migrateDonations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: object
          description: Conflicts were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The search you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add order based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Migrate Donation Orders
      tags:
        - Gifts
  /gifts/{tenantId}/order/{order_id}:
    get:
      description: Returns a list of records with the specified order_id
      operationId: listGiftsByOrderId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: order_id
          required: true
          description: The order_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListGiftsResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified order_id
      tags:
        - Gifts
  /gifts/{tenantId}/organization/{organization_id}:
    get:
      description: Returns a list of records with the specified organization_id
      operationId: listGiftsByOrganizationId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: organization_id
          required: true
          description: The organization_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListGiftsResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified organization_id
      tags:
        - Gifts
  /gifts/{tenantId}/pledge/{pledge_id}:
    get:
      description: Returns a list of records with the specified pledge_id
      operationId: listGiftsByPledgeId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: pledge_id
          required: true
          description: The pledge_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListGiftsResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified pledge_id
      tags:
        - Gifts
  /gifts/{tenantId}/previewReceipt:
    post:
      description: Sends out a preview of the gift receipt email
      operationId: previewReceipt
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PreviewReceiptRequest'
      responses:
        '200':
          description: The record was retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate any organizations with the specified domain
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Preview Gift Receipt
      tags:
        - Gifts
  /gifts/{tenantId}/process:
    post:
      description: Resends the gift receipt
      operationId: processGift
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/ProcessGiftInfo'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StepFunctionExecutionToken'
          description: The record was retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate any organizations with the specified domain
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Resend Receipt
      tags:
        - Gifts
  /gifts/{tenantId}/public/givingFormManifest:
    get:
      description: >-
        Public API Endpoint that gets information used to populate the giving
        form
      operationId: getPublicGivingFormManifest
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: query
          name: givingProcessId
          required: false
          schema:
            type: string
        - in: query
          name: campaignId
          required: false
          schema:
            type: string
        - in: query
          name: appealId
          required: false
          schema:
            type: string
      responses:
        '200':
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      summary: Get Public Giving Form Manifest
      tags:
        - Gifts
  /gifts/{tenantId}/public/process:
    post:
      description: Resends the gift receipt
      operationId: processGiftPublicly
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: header
          name: x-aws-waf-token
          required: false
          description: >-
            AWS WAF Captcha Token that is issues as a part of the WAF validation
            flow for protected public endpoints
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/ProcessGiftInfo'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StepFunctionExecutionToken'
          description: The record was retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate any organizations with the specified domain
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      summary: Resend Receipt
      tags:
        - Gifts
  /gifts/{tenantId}/recurringGift/{recurring_gift_id}:
    get:
      description: Returns a list of records with the specified recurring_gift_id
      operationId: listGiftsByRecurringGiftId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: recurring_gift_id
          required: true
          description: The recurring_gift_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListGiftsResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified recurring_gift_id
      tags:
        - Gifts
  /gifts/{tenantId}/resendReceipt/{id}:
    post:
      description: Resends the gift receipt
      operationId: resendReceipt
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the gift
          schema:
            type: string
      responses:
        '200':
          description: The record was retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate any organizations with the specified domain
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Resend Receipt
      tags:
        - Gifts
  /gifts/{tenantId}/search:
    post:
      description: Searches for gifts using predefined parameters
      operationId: searchForGifts
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key for the search, for paging support
          schema:
            type: string
        - in: query
          name: fieldsToReturn
          required: false
          description: '  The fields that you want to retrieve; if omitted, the entire object is returned'
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GiftSearchParameters'
        description: The gift that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PagedGiftSearchResults'
          description: The gift search was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The gift you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The gift could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add gift based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Searches for gifts using predefined parameters
      tags:
        - Gifts
  /gifts/{tenantId}/softCredits/{donorId}:
    get:
      description: Lists all the soft credits for a donor
      operationId: getSoftCreditsForDonor
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: donorId
          required: true
          description: The contact id
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The contact id
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Gift'
          description: The soft credits was retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The members supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The members could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Request limit exceeded... please try your request again in a few
            seconds
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: List Donor Soft Credits
      tags:
        - Gifts
  /gifts/{tenantId}/{id}:
    delete:
      description: This method will delete a gift with the specified ID.
      operationId: deleteGift
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the gift to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The gift was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The gift could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The gift could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to delete gift based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a gift from the system by its ID.
      tags:
        - Gifts
    get:
      description: This method will look up a gift by the specified ID and return it back.
      operationId: getGift
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the gift to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Gift'
          description: The gift was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The gift could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve gift based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a gift from the system by its ID.
      tags:
        - Gifts
    patch:
      description: >-
        This method will patch an existing gift with the specified ID, using the
        HTTP PATCH specification.
      operationId: patchGift
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the gift to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Gift'
          description: The gift was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The gift could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The gift could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve gift based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a gift with the specified ID.
      tags:
        - Gifts
    put:
      description: This method will update an existing gift with the specified ID.
      operationId: updateGift
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the gift to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Gift'
        description: The updated gift that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Gift'
          description: The gift was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The gift supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The gift could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The gift could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve gift based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a gift with the specified ID.
      tags:
        - Gifts
  /givingProcesses/{tenantId}:
    get:
      description: >-
        This method will scan all giving processes and and return them to the
        caller.
      operationId: listGivingProcesses
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/GivingProcess'
                type: array
          description: The giving processeswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the giving processes in the system.
      tags:
        - Giving Processes
    post:
      description: >-
        This method will auto-generate an ID and create a new giving process. If
        an ID is specified for the giving process, an error will be thrown.
      operationId: createGivingProcess
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GivingProcess'
        description: The giving process that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GivingProcess'
          description: The giving process was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The giving process you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The giving process could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to add giving process based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new giving process record that does not already exist.
      tags:
        - Giving Processes
  /givingProcesses/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The giving process could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve giving process based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Giving Processes
  /givingProcesses/{tenantId}/eligible/{customerType}/{contactOrOrganizationId}:
    get:
      operationId: getEligibleProcesses
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed
          schema:
            type: string
        - in: path
          name: customerType
          required: true
          description: The contact or organization type
          schema:
            type: string
            enum:
              - contact
              - organization
        - in: path
          name: contactOrOrganizationId
          required: true
          description: The contact or organization id
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/GivingProcess'
                type: array
          description: Processes were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Request limit exceeded... please try your request again in a few
            seconds
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: An internal server error occured.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the processes a contact/org is eligible to use
      tags:
        - Giving Processes
  /givingProcesses/{tenantId}/{id}:
    delete:
      description: This method will delete a giving process with the specified ID.
      operationId: deleteGivingProcess
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the giving process to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The giving process was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The giving process could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The giving process could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete giving process based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a giving process from the system by its ID.
      tags:
        - Giving Processes
    get:
      description: >-
        This method will look up a giving process by the specified ID and return
        it back.
      operationId: getGivingProcess
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the giving process to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GivingProcess'
          description: The giving process was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The giving process could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve giving process based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a giving process from the system by its ID.
      tags:
        - Giving Processes
    patch:
      description: >-
        This method will patch an existing giving process with the specified ID,
        using the HTTP PATCH specification.
      operationId: patchGivingProcess
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the giving process to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GivingProcess'
          description: The giving process was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The giving process could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The giving process could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve giving process based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a giving process with the specified ID.
      tags:
        - Giving Processes
    put:
      description: >-
        This method will update an existing giving process with the specified
        ID.
      operationId: updateGivingProcess
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the giving process to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GivingProcess'
        description: The updated giving process that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GivingProcess'
          description: The giving process was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The giving process supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The giving process could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The giving process could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve giving process based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a giving process with the specified ID.
      tags:
        - Giving Processes
  /pledgeLevels/{tenantId}:
    get:
      description: >-
        This method will scan all pledge levels and and return them to the
        caller.
      operationId: listPledgeLevels
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/PledgeLevel'
                type: array
          description: The pledge levelswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the pledge levels in the system.
      tags:
        - Pledge Levels
    post:
      description: >-
        This method will auto-generate an ID and create a new pledge level. If
        an ID is specified for the pledge level, an error will be thrown.
      operationId: createPledgeLevel
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PledgeLevel'
        description: The pledge level that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PledgeLevel'
          description: The pledge level was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The pledge level you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The pledge level could not be saved because it refers to/depends on
            a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add pledge level based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new pledge level record that does not already exist.
      tags:
        - Pledge Levels
  /pledgeLevels/{tenantId}/{id}:
    delete:
      description: This method will delete a pledge level with the specified ID.
      operationId: deletePledgeLevel
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the pledge level to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The pledge level was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The pledge level could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The pledge level could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete pledge level based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a pledge level from the system by its ID.
      tags:
        - Pledge Levels
    get:
      description: >-
        This method will look up a pledge level by the specified ID and return
        it back.
      operationId: getPledgeLevel
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the pledge level to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PledgeLevel'
          description: The pledge level was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The pledge level could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve pledge level based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a pledge level from the system by its ID.
      tags:
        - Pledge Levels
    patch:
      description: >-
        This method will patch an existing pledge level with the specified ID,
        using the HTTP PATCH specification.
      operationId: patchPledgeLevel
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the pledge level to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PledgeLevel'
          description: The pledge level was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The pledge level could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The pledge level could not be saved because it refers to/depends on
            a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve pledge level based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a pledge level with the specified ID.
      tags:
        - Pledge Levels
    put:
      description: This method will update an existing pledge level with the specified ID.
      operationId: updatePledgeLevel
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the pledge level to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PledgeLevel'
        description: The updated pledge level that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PledgeLevel'
          description: The pledge level was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The pledge level supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The pledge level could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The pledge level could not be saved because it refers to/depends on
            a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve pledge level based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a pledge level with the specified ID.
      tags:
        - Pledge Levels
  /pledgeNotices/{tenantId}:
    get:
      description: >-
        This method will scan all pledge notices and and return them to the
        caller.
      operationId: listPledgeNotices
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/PledgeNotice'
                type: array
          description: The pledge noticeswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the pledge notices in the system.
      tags:
        - Pledge Notices
    post:
      description: >-
        This method will auto-generate an ID and create a new pledge notice. If
        an ID is specified for the pledge notice, an error will be thrown.
      operationId: createPledgeNotice
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PledgeNotice'
        description: The pledge notice that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PledgeNotice'
          description: The pledge notice was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The pledge notice you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The pledge notice could not be saved because it refers to/depends on
            a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to add pledge notice based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new pledge notice record that does not already exist.
      tags:
        - Pledge Notices
  /pledgeNotices/{tenantId}/{id}:
    delete:
      description: This method will delete a pledge notice with the specified ID.
      operationId: deletePledgeNotice
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the pledge notice to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The pledge notice was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The pledge notice could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The pledge notice could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete pledge notice based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a pledge notice from the system by its ID.
      tags:
        - Pledge Notices
    get:
      description: >-
        This method will look up a pledge notice by the specified ID and return
        it back.
      operationId: getPledgeNotice
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the pledge notice to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PledgeNotice'
          description: The pledge notice was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The pledge notice could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve pledge notice based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a pledge notice from the system by its ID.
      tags:
        - Pledge Notices
    patch:
      description: >-
        This method will patch an existing pledge notice with the specified ID,
        using the HTTP PATCH specification.
      operationId: patchPledgeNotice
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the pledge notice to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PledgeNotice'
          description: The pledge notice was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The pledge notice could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The pledge notice could not be saved because it refers to/depends on
            a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve pledge notice based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a pledge notice with the specified ID.
      tags:
        - Pledge Notices
    put:
      description: This method will update an existing pledge notice with the specified ID.
      operationId: updatePledgeNotice
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the pledge notice to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PledgeNotice'
        description: The updated pledge notice that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PledgeNotice'
          description: The pledge notice was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The pledge notice supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The pledge notice could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The pledge notice could not be saved because it refers to/depends on
            a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve pledge notice based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a pledge notice with the specified ID.
      tags:
        - Pledge Notices
  /pledges/{tenantId}:
    post:
      description: >-
        This method will auto-generate an ID and create a new pledge. If an ID
        is specified for the pledge, an error will be thrown.
      operationId: createPledge
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Pledge'
        description: The pledge that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Pledge'
          description: The pledge was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The pledge you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The pledge could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add pledge based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new pledge record that does not already exist.
      tags:
        - Pledges
  /pledges/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The pledge could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve pledge based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Pledges
  /pledges/{tenantId}/contact/{contact_id}:
    get:
      description: Returns a list of records with the specified contact_id
      operationId: listPledgesByContactId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: contact_id
          required: true
          description: The contact_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListPledgesResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified contact_id
      tags:
        - Pledges
  /pledges/{tenantId}/donor/{donor_id}:
    get:
      description: Returns a list of records with the specified donor_id
      operationId: listPledgesByDonorId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: donor_id
          required: true
          description: The donor_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListPledgesResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified donor_id
      tags:
        - Pledges
  /pledges/{tenantId}/generateOrder:
    post:
      description: >-
        This method will examine a fundraising pledge and generate an
        appropriate order
      operationId: generateOrder
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PledgePayload'
        description: The pledge to generate an order
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                type: object
          description: Conflicts were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The search you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add order based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Generates an order from a fundraising pledge
      tags:
        - Pledges
  /pledges/{tenantId}/order/{order_id}:
    get:
      description: Returns a list of records with the specified order_id
      operationId: listPledgesByOrderId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: order_id
          required: true
          description: The order_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListPledgesResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified order_id
      tags:
        - Pledges
  /pledges/{tenantId}/organization/{organization_id}:
    get:
      description: Returns a list of records with the specified organization_id
      operationId: listPledgesByOrganizationId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: organization_id
          required: true
          description: The organization_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListPledgesResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified organization_id
      tags:
        - Pledges
  /pledges/{tenantId}/previewEmail:
    post:
      description: Sends out a preview of the pledge notification email
      operationId: previewEmail
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PreviewEmailRequest'
        description: The domain_name to use to for record lookup
        required: true
      responses:
        '200':
          description: The record was retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate any organizations with the specified domain
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Sends out a preview of the pledge notification email
      tags:
        - Pledges
  /pledges/{tenantId}/previewReceipt:
    post:
      description: Sends out a preview of the pledge receipt email
      operationId: previewReceipt
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PreviewReceiptRequest'
      responses:
        '200':
          description: The record was retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate any organizations with the specified domain
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Preview Pledge Receipt
      tags:
        - Pledges
  /pledges/{tenantId}/process:
    post:
      description: Resends the pledge receipt
      operationId: processPledge
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/ProcessPledgeInfo'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StepFunctionExecutionToken'
          description: The record was retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate any organizations with the specified domain
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Resend Receipt
      tags:
        - Pledges
  /pledges/{tenantId}/public/process:
    post:
      description: Resends the pledge receipt
      operationId: processPledgePublicly
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/ProcessPledgeInfo'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StepFunctionExecutionToken'
          description: The record was retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate any organizations with the specified domain
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      summary: Resend Receipt
      tags:
        - Pledges
  /pledges/{tenantId}/resendReceipt/{id}:
    post:
      description: Resends the pledge receipt
      operationId: resendReceipt
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the pledge
          schema:
            type: string
      responses:
        '200':
          description: The record was retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate any organizations with the specified domain
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Resend Receipt
      tags:
        - Pledges
  /pledges/{tenantId}/search:
    post:
      description: Searches for pledges using predefined parameters
      operationId: searchForPledges
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key for the search, for paging support
          schema:
            type: string
        - in: query
          name: fieldsToReturn
          required: false
          description: '  The fields that you want to retrieve; if omitted, the entire object is returned'
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PledgeSearchParameters'
        description: The pledge that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PagedPledgeSearchResults'
          description: The pledge search was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The pledge you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The pledge could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add pledge based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Searches for pledges using predefined parameters
      tags:
        - Pledges
  /pledges/{tenantId}/{id}:
    delete:
      description: This method will delete a pledge with the specified ID.
      operationId: deletePledge
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the pledge to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The pledge was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The pledge could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The pledge could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to delete pledge based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a pledge from the system by its ID.
      tags:
        - Pledges
    get:
      description: >-
        This method will look up a pledge by the specified ID and return it
        back.
      operationId: getPledge
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the pledge to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Pledge'
          description: The pledge was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The pledge could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve pledge based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a pledge from the system by its ID.
      tags:
        - Pledges
    patch:
      description: >-
        This method will patch an existing pledge with the specified ID, using
        the HTTP PATCH specification.
      operationId: patchPledge
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the pledge to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Pledge'
          description: The pledge was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The pledge could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The pledge could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve pledge based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a pledge with the specified ID.
      tags:
        - Pledges
    put:
      description: This method will update an existing pledge with the specified ID.
      operationId: updatePledge
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the pledge to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Pledge'
        description: The updated pledge that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Pledge'
          description: The pledge was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The pledge supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The pledge could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The pledge could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve pledge based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a pledge with the specified ID.
      tags:
        - Pledges
  /premiums/{tenantId}:
    get:
      description: This method will scan all premiums and and return them to the caller.
      operationId: listPremiums
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/Premium'
                type: array
          description: The premiumswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the premiums in the system.
      tags:
        - Premiums
    post:
      description: >-
        This method will auto-generate an ID and create a new premium. If an ID
        is specified for the premium, an error will be thrown.
      operationId: createPremium
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Premium'
        description: The premium that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Premium'
          description: The premium was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The premium you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The premium could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add premium based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new premium record that does not already exist.
      tags:
        - Premiums
  /premiums/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The premium could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve premium based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Premiums
  /premiums/{tenantId}/{id}:
    delete:
      description: This method will delete a premium with the specified ID.
      operationId: deletePremium
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the premium to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The premium was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The premium could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The premium could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to delete premium based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a premium from the system by its ID.
      tags:
        - Premiums
    get:
      description: >-
        This method will look up a premium by the specified ID and return it
        back.
      operationId: getPremium
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the premium to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Premium'
          description: The premium was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The premium could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve premium based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a premium from the system by its ID.
      tags:
        - Premiums
    patch:
      description: >-
        This method will patch an existing premium with the specified ID, using
        the HTTP PATCH specification.
      operationId: patchPremium
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the premium to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Premium'
          description: The premium was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The premium could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The premium could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve premium based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a premium with the specified ID.
      tags:
        - Premiums
    put:
      description: This method will update an existing premium with the specified ID.
      operationId: updatePremium
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the premium to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Premium'
        description: The updated premium that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Premium'
          description: The premium was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The premium supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The premium could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The premium could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve premium based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a premium with the specified ID.
      tags:
        - Premiums
  /products/{tenantId}:
    get:
      description: This method will scan all products and and return them to the caller.
      operationId: listProducts
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/Product'
                type: array
          description: The productswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the products in the system.
      tags:
        - Products
    post:
      description: >-
        This method will auto-generate an ID and create a new product. If an ID
        is specified for the product, an error will be thrown.
      operationId: createProduct
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Product'
        description: The product that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Product'
          description: The product was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The product you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The product could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add product based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new product record that does not already exist.
      tags:
        - Products
  /products/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The product could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve product based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Products
  /products/{tenantId}/fund/{fund_id}:
    get:
      description: Returns a list of records with the specified fund_id
      operationId: listProductsByFundId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: fund_id
          required: true
          description: The fund_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListProductsResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified fund_id
      tags:
        - Products
  /products/{tenantId}/{id}:
    delete:
      description: This method will delete a product with the specified ID.
      operationId: deleteProduct
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the product to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The product was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The product could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The product could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to delete product based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a product from the system by its ID.
      tags:
        - Products
    get:
      description: >-
        This method will look up a product by the specified ID and return it
        back.
      operationId: getProduct
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the product to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Product'
          description: The product was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The product could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve product based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a product from the system by its ID.
      tags:
        - Products
    patch:
      description: >-
        This method will patch an existing product with the specified ID, using
        the HTTP PATCH specification.
      operationId: patchProduct
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the product to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Product'
          description: The product was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The product could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The product could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve product based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a product with the specified ID.
      tags:
        - Products
    put:
      description: This method will update an existing product with the specified ID.
      operationId: updateProduct
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the product to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Product'
        description: The updated product that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Product'
          description: The product was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The product supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The product could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The product could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve product based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a product with the specified ID.
      tags:
        - Products
  /queryDefinitions/{tenantId}:
    get:
      description: Returns a list of records
      operationId: getQueryDefinitions
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListStandardQueryDefinitionsResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records
      tags:
        - Query Definitions
  /recurringGifts/{tenantId}:
    get:
      description: >-
        This method will scan all recurring gifts and and return them to the
        caller.
      operationId: listRecurringGifts
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/RecurringGift'
                type: array
          description: The recurring giftswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the recurring gifts in the system.
      tags:
        - Recurring Gifts
    post:
      description: >-
        This method will auto-generate an ID and create a new recurring gift. If
        an ID is specified for the recurring gift, an error will be thrown.
      operationId: createRecurringGift
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RecurringGift'
        description: The recurring gift that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RecurringGift'
          description: The recurring gift was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The recurring gift you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The recurring gift could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to add recurring gift based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new recurring gift record that does not already exist.
      tags:
        - Recurring Gifts
  /recurringGifts/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The recurring gift could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve recurring gift based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Recurring Gifts
  /recurringGifts/{tenantId}/contact/{contact_id}:
    get:
      description: Returns a list of records with the specified contact_id
      operationId: listRecurringGiftsByContactId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: contact_id
          required: true
          description: The contact_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListRecurringGiftsResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified contact_id
      tags:
        - Recurring Gifts
  /recurringGifts/{tenantId}/donor/{donor_id}:
    get:
      description: Returns a list of records with the specified donor_id
      operationId: listGiftsByDonorId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: donor_id
          required: true
          description: The donor_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListRecurringGiftsResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified donor_id
      tags:
        - Recurring Gifts
  /recurringGifts/{tenantId}/organization/{organization_id}:
    get:
      description: Returns a list of records with the specified organization_id
      operationId: listRecurringGiftsByOrganizationId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: organization_id
          required: true
          description: The organization_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListRecurringGiftsResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified organization_id
      tags:
        - Recurring Gifts
  /recurringGifts/{tenantId}/search:
    post:
      description: Searches for recurring gifts using predefined parameters
      operationId: searchForRecurringGifts
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key for the search, for paging support
          schema:
            type: string
        - in: query
          name: fieldsToReturn
          required: false
          description: '  The fields that you want to retrieve; if omitted, the entire object is returned'
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RecurringGiftSearchParameters'
        description: The recurring gift that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PagedRecurringGiftSearchResults'
          description: The recurring gift search was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The recurring gift you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The recurring gift could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to add recurring gift based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Searches for recurring gifts using predefined parameters
      tags:
        - Recurring Gifts
  /recurringGifts/{tenantId}/{id}:
    delete:
      description: This method will delete a recurring gift with the specified ID.
      operationId: deleteRecurringGift
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the recurring gift to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The recurring gift was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The recurring gift could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The recurring gift could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete recurring gift based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a recurring gift from the system by its ID.
      tags:
        - Recurring Gifts
    get:
      description: >-
        This method will look up a recurring gift by the specified ID and return
        it back.
      operationId: getRecurringGift
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the recurring gift to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RecurringGift'
          description: The recurring gift was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The recurring gift could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve recurring gift based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a recurring gift from the system by its ID.
      tags:
        - Recurring Gifts
    patch:
      description: >-
        This method will patch an existing recurring gift with the specified ID,
        using the HTTP PATCH specification.
      operationId: patchRecurringGift
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the recurring gift to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RecurringGift'
          description: The recurring gift was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The recurring gift could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The recurring gift could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve recurring gift based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a recurring gift with the specified ID.
      tags:
        - Recurring Gifts
    put:
      description: >-
        This method will update an existing recurring gift with the specified
        ID.
      operationId: updateRecurringGift
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the recurring gift to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RecurringGift'
        description: The updated recurring gift that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RecurringGift'
          description: The recurring gift was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The recurring gift supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The recurring gift could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The recurring gift could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve recurring gift based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a recurring gift with the specified ID.
      tags:
        - Recurring Gifts
  /settings/{tenantId}:
    delete:
      description: This method will delete a setting with the specified ID.
      operationId: deleteSetting
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The setting was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The setting could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The setting could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to delete setting based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a setting from the system by its ID.
      tags:
        - Settings
    get:
      description: >-
        This method will look up a setting by the specified ID and return it
        back.
      operationId: getSetting
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Setting'
          description: The setting was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The setting could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve setting based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a setting from the system by its ID.
      tags:
        - Settings
    patch:
      description: >-
        This method will patch an existing setting with the specified ID, using
        the HTTP PATCH specification.
      operationId: patchSetting
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Setting'
          description: The setting was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The setting could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The setting could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve setting based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a setting with the specified ID.
      tags:
        - Settings
    post:
      description: >-
        This method will auto-generate an ID and create a new setting. If an ID
        is specified for the setting, an error will be thrown.
      operationId: createSetting
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Setting'
        description: The setting that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Setting'
          description: The setting was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The setting you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The setting could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add setting based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new setting record that does not already exist.
      tags:
        - Settings
    put:
      description: This method will update an existing setting with the specified ID.
      operationId: updateSetting
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Setting'
        description: The updated setting that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Setting'
          description: The setting was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The setting supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The setting could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The setting could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve setting based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a setting with the specified ID.
      tags:
        - Settings
  /statistics/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The statistic could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve statistic based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Statistics
  /statistics/{tenantId}/{id}:
    get:
      description: >-
        This method will look up a statistic by the specified ID and return it
        back.
      operationId: getStatistic
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the statistic to return.
          schema:
            type: string
        - in: query
          name: parameters
          required: false
          description: Parameters to the query
          schema:
            type: string
        - in: query
          name: recalculate
          required: false
          description: >-
            If true, the latest statistic will be calculated and the cache will
            be updated
          schema:
            type: boolean
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Statistic'
          description: The statistic was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The statistic could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve statistic based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a statistic from the system by its ID.
      tags:
        - Statistics
servers:
  - url: https://fundraising.api.rhythmsoftware.com
tags:
  - name: Appeals
    description: Appeals
  - name: Billing Templates
    description: Billing Templates
  - name: Campaigns
    description: Campaigns
  - name: Donor Clubs
    description: Donor Clubs
  - name: Donor Levels
    description: Donor Levels
  - name: Donor Statement Templates
    description: Donor Statement Templates
  - name: Donor Statements
    description: Donor Statements
  - name: Donors
    description: Donors
  - name: Fund Categories
    description: Fund Categories
  - name: Funds
    description: Funds
  - name: Gift Notices
    description: Gift Notices
  - name: Gifts
    description: Gifts
  - name: Giving Processes
    description: Giving Processes
  - name: Pledge Levels
    description: Pledge Levels
  - name: Pledge Notices
    description: Pledge Notices
  - name: Pledges
    description: Pledges
  - name: Premiums
    description: Premiums
  - name: Products
    description: Products
  - name: Query Definitions
    description: Query Definitions
  - name: Recurring Gifts
    description: Recurring Gifts
  - name: Settings
    description: Settings
  - name: Statistics
    description: Statistics
