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

# Whether a job can be done, requirement by requirement.

> One row per part, tool, skill or permit the job needs, with whether it is satisfied and whether
its absence is what blocks the work.



## OpenAPI

````yaml /api-reference/openapi.json get /work_order_readiness
openapi: 3.0.0
info:
  description: ''
  title: >-
    The only schema PostgREST exposes (ADR-014). 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: Assets
  - name: Asset lifecycle
  - name: Work lifecycle
  - name: Maintenance
  - name: Inventory
  - name: Inventory detail
  - name: Procurement
  - name: Contracts
  - name: Workforce
  - name: Capacity
  - name: Dispatch
  - name: Routing
  - name: Tools
  - name: Inspections
  - name: Verification
  - name: Reliability
  - name: Parts demand
  - name: Sensors and meters
  - name: Map
  - name: Floor plans
  - name: Labels
  - name: Lost and found
  - name: Root cause analysis
  - name: Reports
  - name: Audit center
  - name: Activity
  - name: Notifications
  - name: Channels
  - name: Search
  - name: Copilot
  - name: Import
  - name: Files
  - name: Sync
  - name: Support
  - name: Admin
  - name: Access
  - name: Lookups
  - name: Read models
  - name: Branding
  - name: Custom fields
  - name: Form studio
  - name: Workflows
  - name: Workflow studio
  - name: Rules
  - name: Statuses and transitions
  - name: Currencies and locales
  - 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: Platform
  - name: Self verification
  - name: Setup
  - name: Tools on a job, and who has them out
  - name: Vendors and contracts
  - name: Work order execution
  - name: Workforce detail
externalDocs:
  description: PostgREST Documentation
  url: https://postgrest.org/en/v12/references/api.html
paths:
  /work_order_readiness:
    get:
      tags:
        - Read models
      summary: Whether a job can be done, requirement by requirement.
      description: >-
        One row per part, tool, skill or permit the job needs, with whether it
        is satisfied and whether

        its absence is what blocks the work.
      parameters:
        - $ref: '#/components/parameters/rowFilter.work_order_readiness.work_order_id'
        - $ref: >-
            #/components/parameters/rowFilter.work_order_readiness.work_order_number
        - $ref: >-
            #/components/parameters/rowFilter.work_order_readiness.readiness_score
        - $ref: >-
            #/components/parameters/rowFilter.work_order_readiness.requirement_id
        - $ref: >-
            #/components/parameters/rowFilter.work_order_readiness.requirement_type
        - $ref: >-
            #/components/parameters/rowFilter.work_order_readiness.reference_code
        - $ref: '#/components/parameters/rowFilter.work_order_readiness.requirement'
        - $ref: '#/components/parameters/rowFilter.work_order_readiness.quantity'
        - $ref: '#/components/parameters/rowFilter.work_order_readiness.is_mandatory'
        - $ref: '#/components/parameters/rowFilter.work_order_readiness.status'
        - $ref: '#/components/parameters/rowFilter.work_order_readiness.is_satisfied'
        - $ref: '#/components/parameters/rowFilter.work_order_readiness.is_blocking'
        - $ref: >-
            #/components/parameters/rowFilter.work_order_readiness.blocking_reason
        - $ref: '#/components/parameters/rowFilter.work_order_readiness.required_from'
        - $ref: '#/components/parameters/rowFilter.work_order_readiness.required_to'
        - $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/work_order_readiness'
                type: array
            application/vnd.pgrst.object+json:
              schema:
                items:
                  $ref: '#/components/schemas/work_order_readiness'
                type: array
            application/vnd.pgrst.object+json;nulls=stripped:
              schema:
                items:
                  $ref: '#/components/schemas/work_order_readiness'
                type: array
            text/csv:
              schema:
                items:
                  $ref: '#/components/schemas/work_order_readiness'
                type: array
          description: OK
        '206':
          description: Partial Content
components:
  parameters:
    rowFilter.work_order_readiness.work_order_id:
      in: query
      name: work_order_id
      required: false
      schema:
        type: string
    rowFilter.work_order_readiness.work_order_number:
      in: query
      name: work_order_number
      required: false
      schema:
        type: string
    rowFilter.work_order_readiness.readiness_score:
      in: query
      name: readiness_score
      required: false
      schema:
        type: string
    rowFilter.work_order_readiness.requirement_id:
      in: query
      name: requirement_id
      required: false
      schema:
        type: string
    rowFilter.work_order_readiness.requirement_type:
      in: query
      name: requirement_type
      required: false
      schema:
        type: string
    rowFilter.work_order_readiness.reference_code:
      in: query
      name: reference_code
      required: false
      schema:
        type: string
    rowFilter.work_order_readiness.requirement:
      in: query
      name: requirement
      required: false
      schema:
        type: string
    rowFilter.work_order_readiness.quantity:
      in: query
      name: quantity
      required: false
      schema:
        type: string
    rowFilter.work_order_readiness.is_mandatory:
      in: query
      name: is_mandatory
      required: false
      schema:
        type: string
    rowFilter.work_order_readiness.status:
      in: query
      name: status
      required: false
      schema:
        type: string
    rowFilter.work_order_readiness.is_satisfied:
      in: query
      name: is_satisfied
      required: false
      schema:
        type: string
    rowFilter.work_order_readiness.is_blocking:
      in: query
      name: is_blocking
      required: false
      schema:
        type: string
    rowFilter.work_order_readiness.blocking_reason:
      in: query
      name: blocking_reason
      required: false
      schema:
        type: string
    rowFilter.work_order_readiness.required_from:
      in: query
      name: required_from
      required: false
      schema:
        type: string
    rowFilter.work_order_readiness.required_to:
      in: query
      name: required_to
      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:
    work_order_readiness:
      description: >-
        Whether a job can be done, requirement by requirement.


        One row per part, tool, skill or permit the job needs, with whether it
        is satisfied and whether

        its absence is what blocks the work.
      properties:
        blocking_reason:
          format: character varying
          maxLength: 250
          type: string
        is_blocking:
          format: boolean
          type: boolean
        is_mandatory:
          format: boolean
          type: boolean
        is_satisfied:
          format: boolean
          type: boolean
        quantity:
          format: numeric
          type: number
        readiness_score:
          format: numeric
          type: number
        reference_code:
          format: character varying
          maxLength: 80
          type: string
        required_from:
          format: timestamp with time zone
          type: string
        required_to:
          format: timestamp with time zone
          type: string
        requirement:
          format: character varying
          maxLength: 250
          type: string
        requirement_id:
          description: |-
            Note:
            This is a Primary Key.<pk/>
          format: uuid
          type: string
        requirement_type:
          format: character varying
          maxLength: 20
          type: string
        status:
          format: character varying
          maxLength: 20
          type: string
        work_order_id:
          description: |-
            Note:
            This is a Primary Key.<pk/>
          format: uuid
          type: string
        work_order_number:
          format: character varying
          maxLength: 60
          type: string
      type: object

````

## Related topics

- [Core concepts](/core-concepts.md)
- [Inside a work order](/work/work-order-detail.md)
- [What this system does](/introduction.md)
- [Building a maintenance plan](/maintenance/plan-builder.md)
- [The work order list](/work/work-orders.md)
