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

# Send a capex proposal into its approval workflow, or send it back after revision.

> Send a capex proposal into its approval workflow, or send it back after revision.

Sending a draft proposal needs finance.capex_scheme.edit; with finance.capex_scheme.create alone you may send the drafts you added, and anybody else's is refused with FORBIDDEN. A draft goes to the approvers of its workflow, raised in the name of the person who created it, who may then withdraw it; when the last level approves it, it is approved for the consolidation plan, and with no workflow it is approved for the consolidation plan at once. Either way its row on the consolidated plan then goes to the first level of its planning workflow by itself, or waits for the head office to send it where none applies. A proposal sent back to you for revision goes back to the level that asked. Refused with PROPOSAL_APPROVAL_OFF where your organisation still sends whole plans, PROPOSAL_REJECTED for a rejected proposal, which is never sent again, and PLANNING_WINDOW_CLOSED for a new proposal after its unit's window has closed. APPROVAL_REQUIRED in error_code means it is waiting on its approvers.



## OpenAPI

````yaml /api-reference/openapi.json post /rpc/submit_capex_proposal
openapi: 3.0.0
info:
  description: ''
  title: >-
    The only schema PostgREST exposes. Reads are security_invoker views; writes
    are SECURITY DEFINER functions. Rebuilt wholesale on every deploy — it holds
    no data.
  version: 12.2.3
servers:
  - url: https://app.assetinfinity.ai/api
security: []
tags:
  - name: Signing in
  - name: Profile
  - name: My work
  - name: Sites and locations
  - name: Assets
  - name: Asset lifecycle
  - name: Asset components
  - name: Kits
  - name: Work lifecycle
  - name: Work order execution
  - name: Work sequencing
  - name: Maintenance
  - name: Inspections
  - name: Checklists
  - name: Verification
  - name: Self verification
  - name: Inventory
  - name: Inventory detail
  - name: Parts demand
  - name: Procurement
  - name: Catalogue
  - name: Vendors and contracts
  - name: Contracts
  - name: Amendments
  - name: Vendor spend forecast
  - name: Workforce
  - name: Workforce detail
  - name: Capacity
  - name: Dispatch
  - name: Shutdown
  - name: Permits
  - name: Tools
  - name: Tools on jobs
  - name: Bookings
  - name: Booking hand over
  - name: Booking bills
  - name: Calibration history
  - name: Reliability
  - name: Sensors and meters
  - name: Readers
  - name: Trackers
  - name: Real-time location
  - name: Feeds
  - name: Energy
  - name: IT assets
  - name: IT asset software
  - name: IT asset topology
  - name: Warranty lookups
  - name: Map
  - name: Floor plans
  - name: Labels
  - name: Lost and found
  - name: Visitors
  - name: Root cause analysis
  - name: Costing
  - name: Finance
  - name: E-way bills
  - name: E-way bill filing
  - name: Budgets
  - name: Capex plans
  - name: Capex consolidation
  - name: Capex capitalization
  - name: FF&E plans
  - name: Documents
  - name: Document control
  - name: Document folders
  - name: Document tree
  - name: Knowledge
  - name: Reports
  - name: Dashboards
  - name: Extracts
  - name: Data exports
  - name: Audit center
  - name: Audit feed
  - name: Activity
  - name: Conversations
  - name: Notifications
  - name: Date reminders
  - name: Channels
  - name: Search
  - name: Copilot
  - name: Import
  - name: Bulk jobs
  - name: File exchange
  - name: Filing exceptions
  - name: Files
  - name: Sync
  - name: Support
  - name: API keys
  - name: Webhooks
  - name: MCP connections
  - name: MCP sign-in
  - name: SCIM provisioning
  - name: Directory sync
  - name: Security streams
  - name: Clarity
  - name: Single sign-on
  - name: Two-factor sign-in
  - name: Admin
  - name: Access
  - name: Lookups
  - name: Read models
  - name: Reference
  - name: Reference columns
  - name: Reference entry
  - name: List views
  - name: Mapping
  - name: Numbering
  - name: Branding
  - name: Custom fields
  - name: Form studio
  - name: Workflows
  - name: Workflow studio
  - name: Rules
  - name: Statuses and transitions
  - name: Currencies and locales
  - name: Today
  - name: Work configuration
  - name: Asset configuration
  - name: Inventory configuration
  - name: Tool configuration
  - name: Workforce configuration
  - name: Vendor and contract configuration
  - name: Document configuration
  - name: Inspection configuration
  - name: Sites, locations and the organisation
  - name: Setup
  - name: Features
  - name: Billing
  - name: Licence
  - name: Welcome
  - name: Tray
  - name: Tenant switch
  - name: Release
  - name: Upgrade
  - name: Telegram
  - name: Whatsapp
  - name: Inbound mail
  - name: Platform
externalDocs:
  description: PostgREST Documentation
  url: https://postgrest.org/en/v12/references/api.html
paths:
  /rpc/submit_capex_proposal:
    post:
      tags:
        - Capex plans
      summary: >-
        Send a capex proposal into its approval workflow, or send it back after
        revision.
      description: >-
        Send a capex proposal into its approval workflow, or send it back after
        revision.


        Sending a draft proposal needs finance.capex_scheme.edit; with
        finance.capex_scheme.create alone you may send the drafts you added, and
        anybody else's is refused with FORBIDDEN. A draft goes to the approvers
        of its workflow, raised in the name of the person who created it, who
        may then withdraw it; when the last level approves it, it is approved
        for the consolidation plan, and with no workflow it is approved for the
        consolidation plan at once. Either way its row on the consolidated plan
        then goes to the first level of its planning workflow by itself, or
        waits for the head office to send it where none applies. A proposal sent
        back to you for revision goes back to the level that asked. Refused with
        PROPOSAL_APPROVAL_OFF where your organisation still sends whole plans,
        PROPOSAL_REJECTED for a rejected proposal, which is never sent again,
        and PLANNING_WINDOW_CLOSED for a new proposal after its unit's window
        has closed. APPROVAL_REQUIRED in error_code means it is waiting on its
        approvers.
      parameters:
        - $ref: '#/components/parameters/preferParams'
      requestBody:
        content:
          application/json:
            schema:
              description: >-
                Send a capex proposal into its approval workflow, or send it
                back after revision.


                Sending a draft proposal needs finance.capex_scheme.edit; with
                finance.capex_scheme.create alone you may send the drafts you
                added, and anybody else's is refused with FORBIDDEN. A draft
                goes to the approvers of its workflow, raised in the name of the
                person who created it, who may then withdraw it; when the last
                level approves it, it is approved for the consolidation plan,
                and with no workflow it is approved for the consolidation plan
                at once. Either way its row on the consolidated plan then goes
                to the first level of its planning workflow by itself, or waits
                for the head office to send it where none applies. A proposal
                sent back to you for revision goes back to the level that asked.
                Refused with PROPOSAL_APPROVAL_OFF where your organisation still
                sends whole plans, PROPOSAL_REJECTED for a rejected proposal,
                which is never sent again, and PLANNING_WINDOW_CLOSED for a new
                proposal after its unit's window has closed. APPROVAL_REQUIRED
                in error_code means it is waiting on its approvers.
              properties:
                p_line_id:
                  format: uuid
                  type: string
              required:
                - p_line_id
              type: object
          application/vnd.pgrst.object+json:
            schema:
              description: >-
                Send a capex proposal into its approval workflow, or send it
                back after revision.


                Sending a draft proposal needs finance.capex_scheme.edit; with
                finance.capex_scheme.create alone you may send the drafts you
                added, and anybody else's is refused with FORBIDDEN. A draft
                goes to the approvers of its workflow, raised in the name of the
                person who created it, who may then withdraw it; when the last
                level approves it, it is approved for the consolidation plan,
                and with no workflow it is approved for the consolidation plan
                at once. Either way its row on the consolidated plan then goes
                to the first level of its planning workflow by itself, or waits
                for the head office to send it where none applies. A proposal
                sent back to you for revision goes back to the level that asked.
                Refused with PROPOSAL_APPROVAL_OFF where your organisation still
                sends whole plans, PROPOSAL_REJECTED for a rejected proposal,
                which is never sent again, and PLANNING_WINDOW_CLOSED for a new
                proposal after its unit's window has closed. APPROVAL_REQUIRED
                in error_code means it is waiting on its approvers.
              properties:
                p_line_id:
                  format: uuid
                  type: string
              required:
                - p_line_id
              type: object
          application/vnd.pgrst.object+json;nulls=stripped:
            schema:
              description: >-
                Send a capex proposal into its approval workflow, or send it
                back after revision.


                Sending a draft proposal needs finance.capex_scheme.edit; with
                finance.capex_scheme.create alone you may send the drafts you
                added, and anybody else's is refused with FORBIDDEN. A draft
                goes to the approvers of its workflow, raised in the name of the
                person who created it, who may then withdraw it; when the last
                level approves it, it is approved for the consolidation plan,
                and with no workflow it is approved for the consolidation plan
                at once. Either way its row on the consolidated plan then goes
                to the first level of its planning workflow by itself, or waits
                for the head office to send it where none applies. A proposal
                sent back to you for revision goes back to the level that asked.
                Refused with PROPOSAL_APPROVAL_OFF where your organisation still
                sends whole plans, PROPOSAL_REJECTED for a rejected proposal,
                which is never sent again, and PLANNING_WINDOW_CLOSED for a new
                proposal after its unit's window has closed. APPROVAL_REQUIRED
                in error_code means it is waiting on its approvers.
              properties:
                p_line_id:
                  format: uuid
                  type: string
              required:
                - p_line_id
              type: object
          text/csv:
            schema:
              description: >-
                Send a capex proposal into its approval workflow, or send it
                back after revision.


                Sending a draft proposal needs finance.capex_scheme.edit; with
                finance.capex_scheme.create alone you may send the drafts you
                added, and anybody else's is refused with FORBIDDEN. A draft
                goes to the approvers of its workflow, raised in the name of the
                person who created it, who may then withdraw it; when the last
                level approves it, it is approved for the consolidation plan,
                and with no workflow it is approved for the consolidation plan
                at once. Either way its row on the consolidated plan then goes
                to the first level of its planning workflow by itself, or waits
                for the head office to send it where none applies. A proposal
                sent back to you for revision goes back to the level that asked.
                Refused with PROPOSAL_APPROVAL_OFF where your organisation still
                sends whole plans, PROPOSAL_REJECTED for a rejected proposal,
                which is never sent again, and PLANNING_WINDOW_CLOSED for a new
                proposal after its unit's window has closed. APPROVAL_REQUIRED
                in error_code means it is waiting on its approvers.
              properties:
                p_line_id:
                  format: uuid
                  type: string
              required:
                - p_line_id
              type: object
        required: true
      responses:
        '200':
          description: OK
components:
  parameters:
    preferParams:
      description: Preference
      in: header
      name: Prefer
      required: false
      schema:
        enum:
          - params=single-object
        type: string

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.