> ## 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.

# The capex approval notes: one for each planned Project, Specified or Flexible capex proposal a note has been raised…

> The capex approval notes: one for each planned Project, Specified or Flexible capex proposal a note has been raised for, the paper it goes to the committee with.

What the proposal and its planning decided is read off them and cannot be changed here: fiscal_calendar_name, scheme_code (the Request ID), the unit and location (site_name, location_name), implementing_unit_name (the proposal's location, or its unit where it names no location), category (PROJECT, SPECIFIED or FLEXIBLE: the Category (P/S/C/F)), budget_category_name (the Sub-Category), investment_type (NEW or CARRY_FORWARD), item_description (as the consolidated plan has it) and plan_amount (the Amount as per Division's capex plan: the proposal's Capex Amount).

What the note says is its own. tender_committee_applicable is asked only of a PROJECT: true for a new one until changed, and for a CARRY_FORWARD what the note on the proposal it continues said, where that one has a note; tender_committee_settled says the answer is fixed and not changed here, which it is for every other category, false. project_name starts as the item description. policy_ids are values of your organisation's Fixed Policy list (see capex_fixed_policies), with policy_names their names in the same order. policy_modification, sanction_sought, relevant_decisions, cash_flows, npv, key_assumptions, financial_sensitivities, write_offs, budget_reference, approved_project_changes and recommendation are bulleted text: plain text a line at a time, a point being a line that starts "• " or "1. ". background, costs_and_benefits, technology_rationale, implementation_schedule, key_risks, negotiation_process, ehs_compliance, supplementary_information and annexures are documents: markup with pictures and PDFs named by file id, as a capex proposal's justification is. project_cost_amount is the Cost of project proposal and contingency_amount the Contingency Amount, each from zero up to 99,999,999.99; adjusted_amount is the two added together, null until the cost is given. vendor_selection is SINGLE_PARTY or MULTI_PARTY, and consultant_appointment is asked only where the tender committee is applicable, false otherwise.

The note is approved in a workflow of its own, sent with submit_capex_approval_note once it is written; note_needs lists the columns it still needs before it can be sent or approved, empty when nothing. note_status is OPEN until it is decided, APPROVED when the last level approves it (or at once when sent with no workflow to ask) and REJECTED when a level rejects it, which is final, with note_status_reason what was said. request_id and request_display_status are its approval request, the open one where there is one; last_approved_by_name and last_approved_at who last approved a level of it, and when. may_edit says whether you may change it now: while it is with its approvers only the approver it waits on may, and otherwise anybody holding finance.capex_approval_note.edit, until it is decided. may_send says whether you may send it.

created_at, created_by_id and created_by_name say when the note was raised and by whom, with created_source saying what raised it where nobody signed in did; updated_at, updated_by_id and updated_by_name when it was last changed and by whom. The last level's approval is carried out in the name of the person who sent the note, so on an approved note it is last_approved_by_name, not updated_by_name, that says who approved it.

You see every note if you may view approval notes. Without that, you see a note only while a step of its approval is waiting on you under your own authority.



## OpenAPI

````yaml /api-reference/openapi.json get /capex_approval_notes
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: Capex approval notes
  - name: Capex change logs
  - 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: User activity
  - 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:
  /capex_approval_notes:
    get:
      tags:
        - Capex approval notes
      summary: >-
        The capex approval notes: one for each planned Project, Specified or
        Flexible capex proposal a note has been raised…
      description: >-
        The capex approval notes: one for each planned Project, Specified or
        Flexible capex proposal a note has been raised for, the paper it goes to
        the committee with.


        What the proposal and its planning decided is read off them and cannot
        be changed here: fiscal_calendar_name, scheme_code (the Request ID), the
        unit and location (site_name, location_name), implementing_unit_name
        (the proposal's location, or its unit where it names no location),
        category (PROJECT, SPECIFIED or FLEXIBLE: the Category (P/S/C/F)),
        budget_category_name (the Sub-Category), investment_type (NEW or
        CARRY_FORWARD), item_description (as the consolidated plan has it) and
        plan_amount (the Amount as per Division's capex plan: the proposal's
        Capex Amount).


        What the note says is its own. tender_committee_applicable is asked only
        of a PROJECT: true for a new one until changed, and for a CARRY_FORWARD
        what the note on the proposal it continues said, where that one has a
        note; tender_committee_settled says the answer is fixed and not changed
        here, which it is for every other category, false. project_name starts
        as the item description. policy_ids are values of your organisation's
        Fixed Policy list (see capex_fixed_policies), with policy_names their
        names in the same order. policy_modification, sanction_sought,
        relevant_decisions, cash_flows, npv, key_assumptions,
        financial_sensitivities, write_offs, budget_reference,
        approved_project_changes and recommendation are bulleted text: plain
        text a line at a time, a point being a line that starts "• " or "1. ".
        background, costs_and_benefits, technology_rationale,
        implementation_schedule, key_risks, negotiation_process, ehs_compliance,
        supplementary_information and annexures are documents: markup with
        pictures and PDFs named by file id, as a capex proposal's justification
        is. project_cost_amount is the Cost of project proposal and
        contingency_amount the Contingency Amount, each from zero up to
        99,999,999.99; adjusted_amount is the two added together, null until the
        cost is given. vendor_selection is SINGLE_PARTY or MULTI_PARTY, and
        consultant_appointment is asked only where the tender committee is
        applicable, false otherwise.


        The note is approved in a workflow of its own, sent with
        submit_capex_approval_note once it is written; note_needs lists the
        columns it still needs before it can be sent or approved, empty when
        nothing. note_status is OPEN until it is decided, APPROVED when the last
        level approves it (or at once when sent with no workflow to ask) and
        REJECTED when a level rejects it, which is final, with
        note_status_reason what was said. request_id and request_display_status
        are its approval request, the open one where there is one;
        last_approved_by_name and last_approved_at who last approved a level of
        it, and when. may_edit says whether you may change it now: while it is
        with its approvers only the approver it waits on may, and otherwise
        anybody holding finance.capex_approval_note.edit, until it is decided.
        may_send says whether you may send it.


        created_at, created_by_id and created_by_name say when the note was
        raised and by whom, with created_source saying what raised it where
        nobody signed in did; updated_at, updated_by_id and updated_by_name when
        it was last changed and by whom. The last level's approval is carried
        out in the name of the person who sent the note, so on an approved note
        it is last_approved_by_name, not updated_by_name, that says who approved
        it.


        You see every note if you may view approval notes. Without that, you see
        a note only while a step of its approval is waiting on you under your
        own authority.
      parameters:
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.id'
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.capex_plan_line_id
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.capex_consolidated_line_id
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.created_at'
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.updated_at'
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.capex_plan_id'
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.plan_code'
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.fiscal_year'
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.fiscal_calendar_name
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.business_unit_id
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.division_name'
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.scheme_code'
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.site_id'
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.site_name'
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.location_id'
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.location_name'
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.implementing_unit_name
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.category'
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.budget_category_id
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.budget_category_name
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.investment_type
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.carried_from_line_id
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.carried_from_code
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.item_description
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.plan_amount'
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.currency_id'
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.currency_code'
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.tender_committee_applicable
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.tender_committee_settled
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.project_name'
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.policy_ids'
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.policy_names'
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.policy_modification
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.sanction_sought
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.relevant_decisions
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.background'
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.costs_and_benefits
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.technology_rationale
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.implementation_schedule
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.key_risks'
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.negotiation_process
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.ehs_compliance
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.cash_flows'
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.npv'
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.key_assumptions
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.financial_sensitivities
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.write_offs'
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.budget_reference
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.project_cost_amount
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.approved_project_changes
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.recommendation
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.supplementary_information
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.adjusted_amount
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.annexures'
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.vendor_selection
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.consultant_appointment
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.contingency_amount
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.note_status'
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.note_status_reason
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.note_decided_at
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.request_id'
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.request_display_status
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.last_approved_by_user_id
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.last_approved_by_name
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.last_approved_at
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.created_by_id'
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.created_by_name
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.created_source
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.updated_by_id'
        - $ref: >-
            #/components/parameters/rowFilter.capex_approval_notes.updated_by_name
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.note_needs'
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.may_edit'
        - $ref: '#/components/parameters/rowFilter.capex_approval_notes.may_send'
        - $ref: '#/components/parameters/select'
        - $ref: '#/components/parameters/order'
        - $ref: '#/components/parameters/range'
        - $ref: '#/components/parameters/rangeUnit'
        - $ref: '#/components/parameters/offset'
        - $ref: '#/components/parameters/limit'
        - $ref: '#/components/parameters/preferCount'
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/capex_approval_notes'
                type: array
            application/vnd.pgrst.object+json:
              schema:
                items:
                  $ref: '#/components/schemas/capex_approval_notes'
                type: array
            application/vnd.pgrst.object+json;nulls=stripped:
              schema:
                items:
                  $ref: '#/components/schemas/capex_approval_notes'
                type: array
            text/csv:
              schema:
                items:
                  $ref: '#/components/schemas/capex_approval_notes'
                type: array
          description: OK
        '206':
          description: Partial Content
components:
  parameters:
    rowFilter.capex_approval_notes.id:
      in: query
      name: id
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.capex_plan_line_id:
      in: query
      name: capex_plan_line_id
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.capex_consolidated_line_id:
      in: query
      name: capex_consolidated_line_id
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.created_at:
      in: query
      name: created_at
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.updated_at:
      in: query
      name: updated_at
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.capex_plan_id:
      in: query
      name: capex_plan_id
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.plan_code:
      in: query
      name: plan_code
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.fiscal_year:
      in: query
      name: fiscal_year
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.fiscal_calendar_name:
      in: query
      name: fiscal_calendar_name
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.business_unit_id:
      in: query
      name: business_unit_id
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.division_name:
      in: query
      name: division_name
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.scheme_code:
      in: query
      name: scheme_code
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.site_id:
      in: query
      name: site_id
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.site_name:
      in: query
      name: site_name
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.location_id:
      in: query
      name: location_id
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.location_name:
      in: query
      name: location_name
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.implementing_unit_name:
      in: query
      name: implementing_unit_name
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.category:
      in: query
      name: category
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.budget_category_id:
      in: query
      name: budget_category_id
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.budget_category_name:
      in: query
      name: budget_category_name
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.investment_type:
      in: query
      name: investment_type
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.carried_from_line_id:
      in: query
      name: carried_from_line_id
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.carried_from_code:
      in: query
      name: carried_from_code
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.item_description:
      in: query
      name: item_description
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.plan_amount:
      in: query
      name: plan_amount
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.currency_id:
      in: query
      name: currency_id
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.currency_code:
      in: query
      name: currency_code
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.tender_committee_applicable:
      in: query
      name: tender_committee_applicable
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.tender_committee_settled:
      in: query
      name: tender_committee_settled
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.project_name:
      in: query
      name: project_name
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.policy_ids:
      in: query
      name: policy_ids
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.policy_names:
      in: query
      name: policy_names
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.policy_modification:
      in: query
      name: policy_modification
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.sanction_sought:
      in: query
      name: sanction_sought
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.relevant_decisions:
      in: query
      name: relevant_decisions
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.background:
      in: query
      name: background
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.costs_and_benefits:
      in: query
      name: costs_and_benefits
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.technology_rationale:
      in: query
      name: technology_rationale
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.implementation_schedule:
      in: query
      name: implementation_schedule
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.key_risks:
      in: query
      name: key_risks
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.negotiation_process:
      in: query
      name: negotiation_process
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.ehs_compliance:
      in: query
      name: ehs_compliance
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.cash_flows:
      in: query
      name: cash_flows
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.npv:
      in: query
      name: npv
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.key_assumptions:
      in: query
      name: key_assumptions
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.financial_sensitivities:
      in: query
      name: financial_sensitivities
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.write_offs:
      in: query
      name: write_offs
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.budget_reference:
      in: query
      name: budget_reference
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.project_cost_amount:
      in: query
      name: project_cost_amount
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.approved_project_changes:
      in: query
      name: approved_project_changes
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.recommendation:
      in: query
      name: recommendation
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.supplementary_information:
      in: query
      name: supplementary_information
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.adjusted_amount:
      in: query
      name: adjusted_amount
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.annexures:
      in: query
      name: annexures
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.vendor_selection:
      in: query
      name: vendor_selection
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.consultant_appointment:
      in: query
      name: consultant_appointment
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.contingency_amount:
      in: query
      name: contingency_amount
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.note_status:
      in: query
      name: note_status
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.note_status_reason:
      in: query
      name: note_status_reason
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.note_decided_at:
      in: query
      name: note_decided_at
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.request_id:
      in: query
      name: request_id
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.request_display_status:
      in: query
      name: request_display_status
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.last_approved_by_user_id:
      in: query
      name: last_approved_by_user_id
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.last_approved_by_name:
      in: query
      name: last_approved_by_name
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.last_approved_at:
      in: query
      name: last_approved_at
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.created_by_id:
      in: query
      name: created_by_id
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.created_by_name:
      in: query
      name: created_by_name
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.created_source:
      in: query
      name: created_source
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.updated_by_id:
      in: query
      name: updated_by_id
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.updated_by_name:
      in: query
      name: updated_by_name
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.note_needs:
      in: query
      name: note_needs
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.may_edit:
      in: query
      name: may_edit
      required: false
      schema:
        type: string
    rowFilter.capex_approval_notes.may_send:
      in: query
      name: may_send
      required: false
      schema:
        type: string
    select:
      description: Filtering Columns
      in: query
      name: select
      required: false
      schema:
        type: string
    order:
      description: Ordering
      in: query
      name: order
      required: false
      schema:
        type: string
    range:
      description: Limiting and Pagination
      in: header
      name: Range
      required: false
      schema:
        type: string
    rangeUnit:
      description: Limiting and Pagination
      in: header
      name: Range-Unit
      required: false
      schema:
        default: items
        type: string
    offset:
      description: Limiting and Pagination
      in: query
      name: offset
      required: false
      schema:
        type: string
    limit:
      description: Limiting and Pagination
      in: query
      name: limit
      required: false
      schema:
        type: string
    preferCount:
      description: Preference
      in: header
      name: Prefer
      required: false
      schema:
        enum:
          - count=none
        type: string
  schemas:
    capex_approval_notes:
      description: >-
        The capex approval notes: one for each planned Project, Specified or
        Flexible capex proposal a note has been raised for, the paper it goes to
        the committee with.


        What the proposal and its planning decided is read off them and cannot
        be changed here: fiscal_calendar_name, scheme_code (the Request ID), the
        unit and location (site_name, location_name), implementing_unit_name
        (the proposal's location, or its unit where it names no location),
        category (PROJECT, SPECIFIED or FLEXIBLE: the Category (P/S/C/F)),
        budget_category_name (the Sub-Category), investment_type (NEW or
        CARRY_FORWARD), item_description (as the consolidated plan has it) and
        plan_amount (the Amount as per Division's capex plan: the proposal's
        Capex Amount).


        What the note says is its own. tender_committee_applicable is asked only
        of a PROJECT: true for a new one until changed, and for a CARRY_FORWARD
        what the note on the proposal it continues said, where that one has a
        note; tender_committee_settled says the answer is fixed and not changed
        here, which it is for every other category, false. project_name starts
        as the item description. policy_ids are values of your organisation's
        Fixed Policy list (see capex_fixed_policies), with policy_names their
        names in the same order. policy_modification, sanction_sought,
        relevant_decisions, cash_flows, npv, key_assumptions,
        financial_sensitivities, write_offs, budget_reference,
        approved_project_changes and recommendation are bulleted text: plain
        text a line at a time, a point being a line that starts "• " or "1. ".
        background, costs_and_benefits, technology_rationale,
        implementation_schedule, key_risks, negotiation_process, ehs_compliance,
        supplementary_information and annexures are documents: markup with
        pictures and PDFs named by file id, as a capex proposal's justification
        is. project_cost_amount is the Cost of project proposal and
        contingency_amount the Contingency Amount, each from zero up to
        99,999,999.99; adjusted_amount is the two added together, null until the
        cost is given. vendor_selection is SINGLE_PARTY or MULTI_PARTY, and
        consultant_appointment is asked only where the tender committee is
        applicable, false otherwise.


        The note is approved in a workflow of its own, sent with
        submit_capex_approval_note once it is written; note_needs lists the
        columns it still needs before it can be sent or approved, empty when
        nothing. note_status is OPEN until it is decided, APPROVED when the last
        level approves it (or at once when sent with no workflow to ask) and
        REJECTED when a level rejects it, which is final, with
        note_status_reason what was said. request_id and request_display_status
        are its approval request, the open one where there is one;
        last_approved_by_name and last_approved_at who last approved a level of
        it, and when. may_edit says whether you may change it now: while it is
        with its approvers only the approver it waits on may, and otherwise
        anybody holding finance.capex_approval_note.edit, until it is decided.
        may_send says whether you may send it.


        created_at, created_by_id and created_by_name say when the note was
        raised and by whom, with created_source saying what raised it where
        nobody signed in did; updated_at, updated_by_id and updated_by_name when
        it was last changed and by whom. The last level's approval is carried
        out in the name of the person who sent the note, so on an approved note
        it is last_approved_by_name, not updated_by_name, that says who approved
        it.


        You see every note if you may view approval notes. Without that, you see
        a note only while a step of its approval is waiting on you under your
        own authority.
      properties:
        adjusted_amount:
          format: numeric
          type: number
        annexures:
          format: text
          type: string
        approved_project_changes:
          format: text
          type: string
        background:
          format: text
          type: string
        budget_category_id:
          description: >-
            Note:

            This is a Foreign Key to `capex_budget_categories.id`.<fk
            table='capex_budget_categories' column='id'/>
          format: uuid
          type: string
        budget_category_name:
          format: character varying
          maxLength: 150
          type: string
        budget_reference:
          format: text
          type: string
        business_unit_id:
          description: >-
            Note:

            This is a Foreign Key to `business_units.id`.<fk
            table='business_units' column='id'/>
          format: uuid
          type: string
        capex_consolidated_line_id:
          description: |-
            Note:
            This is a Primary Key.<pk/>
          format: uuid
          type: string
        capex_plan_id:
          description: >-
            Note:

            This is a Foreign Key to `capex_plans.id`.<fk table='capex_plans'
            column='id'/>
          format: uuid
          type: string
        capex_plan_line_id:
          description: >-
            Note:

            This is a Foreign Key to `capex_plan_lines.id`.<fk
            table='capex_plan_lines' column='id'/>
          format: uuid
          type: string
        carried_from_code:
          format: character varying
          maxLength: 60
          type: string
        carried_from_line_id:
          description: >-
            Note:

            This is a Foreign Key to `capex_plan_lines.id`.<fk
            table='capex_plan_lines' column='id'/>
          format: uuid
          type: string
        cash_flows:
          format: text
          type: string
        category:
          format: character varying
          maxLength: 12
          type: string
        consultant_appointment:
          format: boolean
          type: boolean
        contingency_amount:
          format: numeric
          type: number
        costs_and_benefits:
          format: text
          type: string
        created_at:
          format: timestamp with time zone
          type: string
        created_by_id:
          description: >-
            Note:

            This is a Foreign Key to `capex_invite_candidates.id`.<fk
            table='capex_invite_candidates' column='id'/>
          format: uuid
          type: string
        created_by_name:
          format: character varying
          maxLength: 200
          type: string
        created_source:
          format: text
          type: string
        currency_code:
          format: character varying
          maxLength: 3
          type: string
        currency_id:
          description: >-
            Note:

            This is a Foreign Key to `asset_cost_to_keep.currency_id`.<fk
            table='asset_cost_to_keep' column='currency_id'/>
          format: uuid
          type: string
        division_name:
          format: character varying
          maxLength: 200
          type: string
        ehs_compliance:
          format: text
          type: string
        financial_sensitivities:
          format: text
          type: string
        fiscal_calendar_name:
          format: character varying
          maxLength: 120
          type: string
        fiscal_year:
          format: integer
          type: integer
        id:
          description: |-
            Note:
            This is a Primary Key.<pk/>
          format: uuid
          type: string
        implementation_schedule:
          format: text
          type: string
        implementing_unit_name:
          format: character varying
          maxLength: 200
          type: string
        investment_type:
          format: character varying
          maxLength: 16
          type: string
        item_description:
          format: text
          type: string
        key_assumptions:
          format: text
          type: string
        key_risks:
          format: text
          type: string
        last_approved_at:
          format: timestamp with time zone
          type: string
        last_approved_by_name:
          format: character varying
          maxLength: 200
          type: string
        last_approved_by_user_id:
          description: >-
            Note:

            This is a Foreign Key to `capex_invite_candidates.id`.<fk
            table='capex_invite_candidates' column='id'/>
          format: uuid
          type: string
        location_id:
          format: uuid
          type: string
        location_name:
          format: character varying
          maxLength: 200
          type: string
        may_edit:
          format: boolean
          type: boolean
        may_send:
          format: boolean
          type: boolean
        negotiation_process:
          format: text
          type: string
        note_decided_at:
          format: timestamp with time zone
          type: string
        note_needs:
          format: text[]
          items:
            type: string
          type: array
        note_status:
          format: character varying
          maxLength: 16
          type: string
        note_status_reason:
          format: text
          type: string
        npv:
          format: text
          type: string
        plan_amount:
          format: numeric
          type: number
        plan_code:
          format: character varying
          maxLength: 60
          type: string
        policy_ids:
          format: uuid[]
          items:
            type: string
          type: array
        policy_modification:
          format: text
          type: string
        policy_names:
          format: text[]
          items:
            type: string
          type: array
        project_cost_amount:
          format: numeric
          type: number
        project_name:
          format: text
          type: string
        recommendation:
          format: text
          type: string
        relevant_decisions:
          format: text
          type: string
        request_display_status:
          format: text
          type: string
        request_id:
          format: uuid
          type: string
        sanction_sought:
          format: text
          type: string
        scheme_code:
          format: character varying
          maxLength: 60
          type: string
        site_id:
          description: >-
            Note:

            This is a Foreign Key to `entry_currencies.for_site_id`.<fk
            table='entry_currencies' column='for_site_id'/>
          format: uuid
          type: string
        site_name:
          format: character varying
          maxLength: 200
          type: string
        supplementary_information:
          format: text
          type: string
        technology_rationale:
          format: text
          type: string
        tender_committee_applicable:
          format: boolean
          type: boolean
        tender_committee_settled:
          format: boolean
          type: boolean
        updated_at:
          format: timestamp with time zone
          type: string
        updated_by_id:
          description: >-
            Note:

            This is a Foreign Key to `capex_invite_candidates.id`.<fk
            table='capex_invite_candidates' column='id'/>
          format: uuid
          type: string
        updated_by_name:
          format: character varying
          maxLength: 200
          type: string
        vendor_selection:
          format: character varying
          maxLength: 16
          type: string
        write_offs:
          format: text
          type: string
      type: object

````

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