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

# Preview revenue recognition reshape

> Preview the exact reshape plan without writing data.



## OpenAPI

````yaml post /v1/accounting/revrec/schedules/{schedule_id}/reshape/preview
openapi: 3.1.0
info:
  title: Hyperline API
  version: 0.0.0
servers:
  - url: https://api.hyperline.co
  - url: https://sandbox.api.hyperline.co
security: []
paths:
  /v1/accounting/revrec/schedules/{schedule_id}/reshape/preview:
    post:
      tags:
        - Accounting > Revenue recognition
      summary: Preview revenue recognition reshape
      description: Preview the exact reshape plan without writing data.
      operationId: previewReshapeRevRecSchedule
      parameters:
        - schema:
            type: string
          required: true
          name: schedule_id
          in: path
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                recognize_now_amount:
                  type: string
                  pattern: ^\d+(\.\d+)?$
                  description: Amount to recognize immediately in ledger currency.
                window:
                  type:
                    - object
                    - 'null'
                  properties:
                    start_date:
                      type: string
                      format: date
                      description: Inclusive start of the new recognition window.
                    end_date:
                      type: string
                      format: date
                      description: Inclusive end of the new recognition window.
                  required:
                    - start_date
                    - end_date
                  description: Window over which to spread the remaining amount.
              required:
                - recognize_now_amount
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccountingRevRecReshapePlan'
      security:
        - bearer: []
components:
  schemas:
    AccountingRevRecReshapePlan:
      type: object
      properties:
        slices:
          type: array
          items:
            type: object
            properties:
              type:
                type: string
                enum:
                  - recognize_now
                  - spread
                description: Planned slice action.
              period_starts_at:
                type:
                  - string
                  - 'null'
                format: date
                description: Inclusive planned period start timestamp.
              period_ends_at:
                type:
                  - string
                  - 'null'
                format: date
                description: Inclusive planned period end timestamp.
              recognition_planned_at:
                type:
                  - string
                  - 'null'
                format: date
                description: Planned recognition timestamp.
              amount:
                type: string
                description: Planned amount in ledger currency.
              amount_in_original_currency:
                type: string
                description: Planned amount in original currency.
              discount_amount:
                type: string
                description: Planned discount amount in ledger currency.
              discount_amount_in_original_currency:
                type: string
                description: Planned discount amount in original currency.
            required:
              - type
              - period_starts_at
              - period_ends_at
              - recognition_planned_at
              - amount
              - amount_in_original_currency
              - discount_amount
              - discount_amount_in_original_currency
          description: Slices that would be persisted by the reshape.
        balance:
          type: object
          properties:
            remaining:
              type: string
              description: Amount available to place in ledger currency.
            placed:
              type: string
              description: Amount placed by the plan in ledger currency.
            leftover:
              type: string
              description: Unplaced amount in ledger currency.
            remaining_in_original_currency:
              type: string
              description: Amount available to place in original currency.
            placed_in_original_currency:
              type: string
              description: Amount placed by the plan in original currency.
            leftover_in_original_currency:
              type: string
              description: Unplaced amount in original currency.
            balanced:
              type: boolean
              description: Whether the plan places the complete remaining balance.
          required:
            - remaining
            - placed
            - leftover
            - remaining_in_original_currency
            - placed_in_original_currency
            - leftover_in_original_currency
            - balanced
          description: Balance reconciliation for the reshape plan.
      required:
        - slices
        - balance
  securitySchemes:
    bearer:
      type: http
      scheme: bearer
      bearerFormat: JWT

````