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

# Approve a maintenance quote

> Gives the job to this supplier at this price, rejects every other quote on the job, and works out whether the landlord has to be asked.



## OpenAPI

````yaml openapi-maintenance.json POST /v1/maintenance/quotes/{id}/approve
openapi: 3.1.0
info:
  title: Yorlet Maintenance API
  description: >-
    APIs for managing maintenance issues, the jobs raised against them, supplier
    quotes, and the conversation with the tenant.
  version: 1.0.0
servers:
  - url: https://api.yorlet.com
    description: Production
  - url: https://api.yorlet.io
    description: Sandbox
security: []
paths:
  /v1/maintenance/quotes/{id}/approve:
    post:
      tags:
        - Maintenance Quotes
      summary: Approve a maintenance quote
      description: >-
        Gives the job to this supplier at this price, rejects every other quote
        on the job, and works out whether the landlord has to be asked.
      operationId: maintenance_job_quotes_approve
      parameters:
        - schema:
            type: string
            description: The id identifier.
          required: true
          description: The id identifier.
          name: id
          in: path
      responses:
        '200':
          description: Returns the maintenance quote object if the request succeeded.
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    description: Unique identifier for the object.
                  created:
                    type: number
                    description: >-
                      Time at which the object was created. Measured in seconds
                      since the Unix epoch.
                  account:
                    type: string
                    description: >-
                      The account that the object belongs to. Only returned if
                      the request is made with a valid Yorlet-Context header.
                  deleted:
                    type: boolean
                    default: false
                    description: Only returned if the object has been deleted.
                  object:
                    type: string
                    enum:
                      - maintenance.quote
                  amount:
                    type:
                      - integer
                      - 'null'
                    description: >-
                      The quoted amount, in the smallest currency unit. `null`
                      until the supplier has submitted a price.
                  approved_at:
                    type:
                      - integer
                      - 'null'
                    description: The time at which the quote was approved.
                  approved_by:
                    anyOf:
                      - type: string
                      - type: object
                        additionalProperties: {}
                      - type: 'null'
                    description: The user who approved the quote.
                  currency:
                    type: string
                    enum:
                      - gbp
                      - usd
                      - eur
                      - sek
                    description: >-
                      Three-letter ISO currency code, in lowercase. Must be a
                      supported currency.
                    example: gbp
                  description:
                    type:
                      - string
                      - 'null'
                    description: >-
                      What the supplier is quoting for, or any caveats they
                      attached to the price.
                  expires_at:
                    type:
                      - integer
                      - 'null'
                    description: The time after which the quoted price no longer stands.
                  files:
                    type: array
                    items:
                      type: string
                    description: >-
                      IDs of files attached to the quote, such as the supplier’s
                      own quote document.
                  issue:
                    anyOf:
                      - type: string
                      - type: object
                        additionalProperties: {}
                    description: The maintenance issue the quote’s job belongs to.
                  job:
                    anyOf:
                      - type: string
                      - type: object
                        additionalProperties: {}
                    description: The job the quote is for.
                  rejected_at:
                    type:
                      - integer
                      - 'null'
                    description: The time at which the quote was rejected.
                  rejection_reason:
                    type:
                      - string
                      - 'null'
                    description: Why the quote was rejected.
                  requested_at:
                    type:
                      - integer
                      - 'null'
                    description: >-
                      The time at which the quote was requested from the
                      supplier.
                  status:
                    type: string
                    enum:
                      - draft
                      - requested
                      - submitted
                      - approved
                      - rejected
                      - canceled
                    description: The status of the quote.
                  submitted_at:
                    type:
                      - integer
                      - 'null'
                    description: The time at which the supplier last submitted a price.
                  supplier:
                    anyOf:
                      - type: string
                      - type: object
                        additionalProperties: {}
                    description: The supplier the quote is from.
                required:
                  - id
                  - created
                  - object
                  - amount
                  - approved_at
                  - approved_by
                  - currency
                  - description
                  - expires_at
                  - files
                  - issue
                  - job
                  - rejected_at
                  - rejection_reason
                  - requested_at
                  - status
                  - submitted_at
                  - supplier
      security:
        - ApiKeyAuth: []
components:
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: Authorization
      description: API Key authentication. Use "Bearer YOUR_API_KEY".

````