tread.io Invoices API

The Invoices API from tread.io — 18 operation(s) for invoices.

OpenAPI Specification

treadio-invoices-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Horizon API V1 AccountExternalTruckIdentifier Invoices API
  version: '1.0'
  contact:
    name: Tread
    url: https://tread.io
    email: developers@tread.io
  description: 'This is the Version 1 implementation.


    When in doubt we default to the practices outlined [here](https://www.vinaysahni.com/best-practices-for-a-pragmatic-restful-api#advanced-queries)'
  license:
    name: Private
    url: https://tread.io
servers:
- description: production
  url: https://api.tread-horizon.com
security:
- bearerAuth: []
tags:
- name: Invoices
paths:
  /v1/companies/{company-id}/invoices:
    parameters:
    - schema:
        type: string
        format: uuid
      name: company-id
      in: path
      required: true
      description: Company ID
    - $ref: '#/components/parameters/Accept-Language'
    get:
      summary: Retrieve Invoices that belong to a Company
      tags:
      - Invoices
      responses:
        '200':
          description: OK
          headers:
            Link:
              schema:
                type: string
              description: Contains prev and next links for pagination
          content:
            application/json:
              schema:
                type: object
                required:
                - data
                properties:
                  data:
                    type: array
                    x-stoplight:
                      id: a57zqne4bafxo
                    items:
                      $ref: '#/components/schemas/Invoice-Read'
        '401':
          $ref: '#/components/responses/UnauthenticatedError'
        '404':
          $ref: '#/components/responses/Error'
        '406':
          $ref: '#/components/responses/Error'
        '422':
          $ref: '#/components/responses/ModelError'
      operationId: get-v1-companies-company-id-invoices
      x-stoplight:
        id: om8gtws0w98k5
      description: Retrieve `Invoices` that visible to a `Company`
      parameters:
      - $ref: '#/components/parameters/filter-start_date'
      - $ref: '#/components/parameters/filter-end_date'
      - $ref: '#/components/parameters/filter-states'
      - $ref: '#/components/parameters/page-limit'
      - $ref: '#/components/parameters/page-before'
      - $ref: '#/components/parameters/page-after'
      - $ref: '#/components/parameters/filter-invoice_category'
      - $ref: '#/components/parameters/filter-grouped'
      - $ref: '#/components/parameters/filter-customer_account_ids'
      - $ref: '#/components/parameters/filter-vendor_account_ids'
      - $ref: '#/components/parameters/filter-pickup_site_ids'
      - $ref: '#/components/parameters/filter-dropoff_site_ids'
      - $ref: '#/components/parameters/filter-project_ids'
      - $ref: '#/components/parameters/filter-rate_types'
      - $ref: '#/components/parameters/filter-invoiceable_type'
      - $ref: '#/components/parameters/filter-driver_ids'
      - $ref: '#/components/parameters/filter-company_id'
      - $ref: '#/components/parameters/search-datagrid'
  /v1/companies/{company-id}/invoices/{id}:
    parameters:
    - schema:
        type: string
        format: uuid
      name: company-id
      in: path
      required: true
      description: Company ID
    - schema:
        type: string
        format: uuid
      name: id
      in: path
      required: true
      description: Invoice ID
    - $ref: '#/components/parameters/Accept-Language'
    patch:
      summary: Update an Invoice for a Company
      tags:
      - Invoices
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                required:
                - data
                properties:
                  data:
                    $ref: '#/components/schemas/Invoice-Read'
        '400':
          $ref: '#/components/responses/Error'
        '401':
          $ref: '#/components/responses/UnauthenticatedError'
        '403':
          $ref: '#/components/responses/Error'
        '404':
          $ref: '#/components/responses/Error'
        '406':
          $ref: '#/components/responses/Error'
        '415':
          $ref: '#/components/responses/Error'
        '422':
          $ref: '#/components/responses/ModelError'
      operationId: patch-v1-companies-company-id-invoices-id
      x-stoplight:
        id: 2b1dd57r20hz1-company
      x-internal: true
      description: 'Update an `Invoice` by ID for a `Company`


        This endpoint requires the `edit_invoice` permission'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              $ref: '#/components/schemas/Invoice-Update'
  /v1/companies/{company-id}/invoices/{invoice-id}/approve:
    parameters:
    - schema:
        type: string
        format: uuid
      name: invoice-id
      in: path
      required: true
      description: Invoice ID
    - schema:
        type: string
        format: uuid
      name: company-id
      in: path
      required: true
      description: Company ID
    - $ref: '#/components/parameters/Accept-Language'
    put:
      summary: Approve an Invoice for a Company
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                required:
                - data
                properties:
                  data:
                    $ref: '#/components/schemas/Invoice-Read'
        '400':
          $ref: '#/components/responses/Error'
        '401':
          $ref: '#/components/responses/UnauthenticatedError'
        '403':
          $ref: '#/components/responses/Error'
        '404':
          $ref: '#/components/responses/Error'
        '406':
          $ref: '#/components/responses/Error'
        '409':
          $ref: '#/components/responses/StateError'
      operationId: put-v1-companies-company-id-invoices-invoice-id-approve
      x-stoplight:
        id: f2s2vpepyhb23
      description: Approve an `Invoice` for a `Company` by ID
      tags:
      - Invoices
      x-internal: true
  /v1/companies/{company-id}/invoices/{invoice-id}/customer_approve:
    parameters:
    - schema:
        type: string
        format: uuid
      name: invoice-id
      in: path
      required: true
      description: Invoice ID
    - schema:
        type: string
        format: uuid
      name: company-id
      in: path
      required: true
      description: Company ID
    - $ref: '#/components/parameters/Accept-Language'
    put:
      summary: Approve the Invoice as the Customer for a Company
      tags:
      - Invoices
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                required:
                - data
                properties:
                  data:
                    $ref: '#/components/schemas/Invoice-Read'
        '400':
          $ref: '#/components/responses/Error'
        '401':
          $ref: '#/components/responses/UnauthenticatedError'
        '403':
          $ref: '#/components/responses/Error'
        '404':
          $ref: '#/components/responses/Error'
        '406':
          $ref: '#/components/responses/Error'
        '409':
          $ref: '#/components/responses/StateError'
        '415':
          $ref: '#/components/responses/Error'
        '422':
          $ref: '#/components/responses/ModelError'
      operationId: put-v1-companies-company-id-invoices-invoice-id-customer_approve
      x-stoplight:
        id: wr2d9e96wxxhp
      x-internal: true
      description: Approve the `Invoice` as the `Customer` for a `Company` by ID
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties: {}
  /v1/companies/{company-id}/invoices/{invoice-id}/customer_pay:
    parameters:
    - schema:
        type: string
        format: uuid
      name: invoice-id
      in: path
      required: true
      description: Invoice ID
    - schema:
        type: string
        format: uuid
      name: company-id
      in: path
      required: true
      description: Company ID
    - $ref: '#/components/parameters/Accept-Language'
    put:
      summary: Pay the Invoice as the Customer for a Company
      tags:
      - Invoices
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                required:
                - data
                properties:
                  data:
                    $ref: '#/components/schemas/Invoice-Read'
        '400':
          $ref: '#/components/responses/Error'
        '401':
          $ref: '#/components/responses/UnauthenticatedError'
        '403':
          $ref: '#/components/responses/Error'
        '404':
          $ref: '#/components/responses/Error'
        '406':
          $ref: '#/components/responses/Error'
        '409':
          $ref: '#/components/responses/StateError'
        '415':
          $ref: '#/components/responses/Error'
        '422':
          $ref: '#/components/responses/ModelError'
      operationId: put-v1-companies-company-id-invoices-invoice-id-customer_pay
      x-internal: true
      description: Pay the `Invoice` as the `Customer` for a `Company` by ID
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties: {}
  /v1/companies/{company-id}/invoices/{invoice-id}/export:
    parameters:
    - schema:
        type: string
        format: uuid
      name: invoice-id
      in: path
      required: true
      description: Invoice ID
    - schema:
        type: string
        format: uuid
      name: company-id
      in: path
      required: true
      description: Company ID
    - $ref: '#/components/parameters/Accept-Language'
    put:
      summary: Export an Invoice for a Company
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                required:
                - data
                properties:
                  data:
                    $ref: '#/components/schemas/Invoice-Read'
        '400':
          $ref: '#/components/responses/Error'
        '401':
          $ref: '#/components/responses/UnauthenticatedError'
        '403':
          $ref: '#/components/responses/Error'
        '404':
          $ref: '#/components/responses/Error'
        '406':
          $ref: '#/components/responses/Error'
        '409':
          $ref: '#/components/responses/StateError'
        '415':
          $ref: '#/components/responses/Error'
      operationId: put-v1-companies-company-id-invoices-invoice-id-export
      description: Export an `Invoice` for a `Company` by ID
      tags:
      - Invoices
      x-internal: true
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties: {}
  /v1/companies/{company-id}/invoices/{invoice-id}/invoice_line_items:
    parameters:
    - schema:
        type: string
        format: uuid
      name: invoice-id
      in: path
      required: true
      description: Invoice ID
    - schema:
        type: string
        format: uuid
      name: company-id
      in: path
      required: true
      description: Company ID
    - $ref: '#/components/parameters/Accept-Language'
    get:
      summary: Retrieve all InvoiceLineItems that belongs to an Invoice for a Company
      responses:
        '200':
          description: OK
          headers:
            Link:
              schema:
                type: string
              description: Contains prev and next links for pagination
          content:
            application/json:
              schema:
                type: object
                required:
                - data
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/InvoiceLineItem-Read'
        '401':
          $ref: '#/components/responses/UnauthenticatedError'
        '404':
          $ref: '#/components/responses/Error'
        '406':
          $ref: '#/components/responses/Error'
      operationId: get-v1-companies-company-id-invoices-invoice-id-invoice_line_items
      description: Retrieve all `InvoiceLineItem` for an `Invoice` for a `Company`
      parameters:
      - $ref: '#/components/parameters/page-limit'
      - $ref: '#/components/parameters/page-after'
      - $ref: '#/components/parameters/page-before'
      x-internal: true
      tags:
      - Invoices
    patch:
      summary: Batch update InvoiceLineItems for an Invoice for a Company
      responses:
        '200':
          description: OK
          headers:
            Link:
              schema:
                type: string
              description: Contains prev and next links for pagination
          content:
            application/json:
              schema:
                type: object
                required:
                - data
                properties:
                  data:
                    type: array
                    x-stoplight:
                      id: d9v9xort2c4gg-company
                    items:
                      $ref: '#/components/schemas/InvoiceLineItem-Read'
        '400':
          $ref: '#/components/responses/Error'
        '401':
          $ref: '#/components/responses/UnauthenticatedError'
        '403':
          $ref: '#/components/responses/Error'
        '404':
          $ref: '#/components/responses/Error'
        '406':
          $ref: '#/components/responses/Error'
        '415':
          $ref: '#/components/responses/Error'
        '422':
          $ref: '#/components/responses/ModelError'
      operationId: patch-v1-companies-company-id-invoices-invoice-id-invoice_line_items
      x-stoplight:
        id: 0qb21d1yd9jv2-company
      description: "Batch update `InvoiceLineItems` for an `Invoice` for a `Company`.\n\nThis endpoint allows updating, creating, deleting `InvoiceLineItems` all at once.\n\nIf updating existing records:\n- must provide the `id` for each record to be updated\n- only provide the fields to be updated\n- no need to provide the `rate_type` field\ne.g.\n```json\ninvoice_line_items: [\n  {\n    \"id\": \"some-uuid\"\n    \"quantity\": 20.25,\n    \"rate\": 15.75\n  }\n]\n```\n\nIf deleting existing records:\n- must provide the `id` and the property `_destroy: 1`\n\ne.g. \n```json\ninvoice_line_items: [\n  {\n    \"id\": \"some-uuid\"\n    \"_destroy\": 1\n  }\n]\n```\n\n<hr>\n\n## This section is deprecated\n#### We are still accepting `rate_type` but it will have no effect. It will be removed in one of the next releases.\n\nIf creating new records (for cases where the `Invoice` `rate_type` grouping changes):\n- must provide the `rate_type`\n- must not provide the `id` for each record to be created\n- provide all the fields needed for the record\ne.g.\n```json\nrate_type: \"RatePerTon\",\ninvoice_line_items: [\n  {\n    \"quantity\": 20.25,\n    \"rate\": 12.5\n  },\n  {\n    \"quantity\": 22.50,\n    \"rate\": 12.5\n  }\n]\n```"
      x-internal: true
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                rate_type:
                  $ref: '#/components/schemas/RateType'
                invoice_line_items:
                  type: array
                  x-stoplight:
                    id: 8binxtypupuut-company
                  items:
                    $ref: '#/components/schemas/InvoiceLineItem-Update'
      tags:
      - Invoices
  /v1/companies/{company-id}/invoices/{invoice-id}/invoice_line_items/generate:
    parameters:
    - schema:
        type: string
        format: uuid
      name: company-id
      in: path
      required: true
      description: Company ID
    - schema:
        type: string
      name: invoice-id
      in: path
      required: true
      description: Invoice ID
    - $ref: '#/components/parameters/Accept-Language'
    post:
      summary: Generate InvoiceLineItems for an Invoice for a Company
      tags:
      - Invoices
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                required:
                - data
                properties:
                  data:
                    type: array
                    x-stoplight:
                      id: pgnb7ip6q7u9m-company
                    items:
                      $ref: '#/components/schemas/InvoiceLineItem-Read-Generated'
        '400':
          $ref: '#/components/responses/Error'
        '401':
          $ref: '#/components/responses/UnauthenticatedError'
        '403':
          $ref: '#/components/responses/Error'
        '404':
          $ref: '#/components/responses/Error'
        '406':
          $ref: '#/components/responses/Error'
        '415':
          $ref: '#/components/responses/Error'
        '422':
          $ref: '#/components/responses/ModelError'
      operationId: post-v1-companies-company-id-invoices-invoice-id-invoice_line_items-generate
      x-stoplight:
        id: ctto8orwcvh2s-company
      description: 'Generate `InvoiceLineItems` for an `Invoice` for a `Company`


        This endpoint only generates the `InvoiceLineItems` based on the inputs and does not store any data on the backend'
      x-internal: true
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
              - rate_value
              - rate_type
              properties:
                rate_value:
                  type: number
                  x-stoplight:
                    id: w5z08oggi7syq-company
                rate_type:
                  $ref: '#/components/schemas/RateType'
  /v1/companies/{company-id}/invoices/{invoice-id}/pay:
    parameters:
    - schema:
        type: string
        format: uuid
      name: invoice-id
      in: path
      required: true
      description: Invoice ID
    - schema:
        type: string
        format: uuid
      name: company-id
      in: path
      required: true
      description: Company ID
    - $ref: '#/components/parameters/Accept-Language'
    put:
      summary: Pay an Invoice for a Company
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                required:
                - data
                properties:
                  data:
                    $ref: '#/components/schemas/Invoice-Read'
        '400':
          $ref: '#/components/responses/Error'
        '401':
          $ref: '#/components/responses/UnauthenticatedError'
        '403':
          $ref: '#/components/responses/Error'
        '404':
          $ref: '#/components/responses/Error'
        '406':
          $ref: '#/components/responses/Error'
        '409':
          $ref: '#/components/responses/StateError'
        '415':
          $ref: '#/components/responses/Error'
      operationId: put-v1-companies-company-id-invoices-invoice-id-pay
      description: Pay an `Invoice` for a `Company` by ID
      tags:
      - Invoices
      x-internal: true
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties: {}
  /v1/companies/{company-id}/invoices/{invoice-id}/send_invoice:
    parameters:
    - schema:
        type: string
        format: uuid
      name: invoice-id
      in: path
      required: true
      description: Invoice ID
    - schema:
        type: string
        format: uuid
      name: company-id
      in: path
      required: true
      description: Company ID
    - $ref: '#/components/parameters/Accept-Language'
    put:
      summary: Send the Invoice for a Company
      tags:
      - Invoices
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                required:
                - data
                properties:
                  data:
                    $ref: '#/components/schemas/Invoice-Read'
        '400':
          $ref: '#/components/responses/Error'
        '401':
          $ref: '#/components/responses/UnauthenticatedError'
        '403':
          $ref: '#/components/responses/Error'
        '404':
          $ref: '#/components/responses/Error'
        '406':
          $ref: '#/components/responses/Error'
        '409':
          $ref: '#/components/responses/StateError'
        '415':
          $ref: '#/components/responses/Error'
        '422':
          $ref: '#/components/responses/ModelError'
      operationId: put-v1-companies-company-id-invoices-invoice-id-send_invoice
      x-internal: true
      description: Send the `Invoice` for a `Company` by ID
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties: {}
  /v1/companies/{company-id}/invoices/{invoice-id}/unapprove:
    parameters:
    - schema:
        type: string
        format: uuid
      name: invoice-id
      in: path
      required: true
      description: Invoice ID
    - schema:
        type: string
        format: uuid
      name: company-id
      in: path
      required: true
      description: Company ID
    - $ref: '#/components/parameters/Accept-Language'
    put:
      summary: Unapprove an Invoice as a Company
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                required:
                - data
                properties:
                  data:
                    $ref: '#/components/schemas/Invoice-Read'
        '401':
          $ref: '#/components/responses/UnauthenticatedError'
        '403':
          $ref: '#/components/responses/Error'
        '404':
          $ref: '#/components/responses/Error'
        '406':
          $ref: '#/components/responses/Error'
        '409':
          $ref: '#/components/responses/StateError'
      operationId: put-v1-companies-company-id-invoices-invoice-id-unapprove
      x-stoplight:
        id: nyslvxh840krh
      description: Unapprove an `Invoice` by ID as a `Company`
      tags:
      - Invoices
      x-internal: true
  /v1/companies/{company-id}/invoices/{invoice-id}/void:
    parameters:
    - schema:
        type: string
        format: uuid
      name: invoice-id
      in: path
      required: true
      description: Invoice ID
    - schema:
        type: string
        format: uuid
      name: company-id
      in: path
      required: true
      description: Company ID
    - $ref: '#/components/parameters/Accept-Language'
    put:
      summary: Void an Invoice for a Company
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                required:
                - data
                properties:
                  data:
                    $ref: '#/components/schemas/Invoice-Read'
        '401':
          $ref: '#/components/responses/UnauthenticatedError'
        '403':
          $ref: '#/components/responses/Error'
        '404':
          $ref: '#/components/responses/Error'
        '406':
          $ref: '#/components/responses/Error'
        '409':
          $ref: '#/components/responses/StateError'
        '415':
          $ref: '#/components/responses/Error'
      operationId: put-v1-companies-company-id-invoices-invoice-id-void
      x-stoplight:
        id: void-company-scoped-invoice
      description: Void an `Invoice` for a `Company` by ID
      tags:
      - Invoices
      x-internal: true
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties: {}
  /v1/companies/{company-id}/jobs/{job-id}/payable:
    parameters:
    - schema:
        type: string
        format: uuid
      name: job-id
      in: path
      required: true
      description: Job ID
    - schema:
        type: string
        format: uuid
      name: company-id
      in: path
      required: true
      description: Company ID
    - $ref: '#/components/parameters/Accept-Language'
    get:
      summary: Retrieve a Payable Invoice for a given Job
      tags:
      - Invoices
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                required:
                - data
                properties:
                  data:
                    $ref: '#/components/schemas/Invoice-Read'
        '400':
          $ref: '#/components/responses/Error'
        '401':
          $ref: '#/components/responses/UnauthenticatedError'
        '404':
          $ref: '#/components/responses/Error'
        '406':
          $ref: '#/components/responses/Error'
      operationId: get-v1-companies-company-id-jobs-job-id-payable
      x-stoplight:
        id: xax41h77exb35
      x-internal: true
      description: "Retrieve a `Payable Invoice` for a given `Job` for a `Company`. \n\nThis can be a `Payable` for a `Vendor` or a `Driver`. "
      parameters: []
  /v1/companies/{company-id}/jobs/{job-id}/receivable:
    parameters:
    - schema:
        type: string
        format: uuid
      name: job-id
      in: path
      required: true
      description: Job ID
    - schema:
        type: string
        format: uuid
      name: company-id
      in: path
      required: true
      description: Company ID
    - $ref: '#/components/parameters/Accept-Language'
    get:
      summary: Retrieve a Receivable for a given Job
      tags:
      - Invoices
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                required:
                - data
                properties:
                  data:
                    $ref: '#/components/schemas/Invoice-Read'
        '400':
          $ref: '#/components/responses/Error'
        '401':
          $ref: '#/components/responses/UnauthenticatedError'
        '404':
          $ref: '#/components/responses/Error'
        '406':
          $ref: '#/components/responses/Error'
      operationId: get-v1-companies-company-id-jobs-job-id-receivable
      x-stoplight:
        id: 8y58pkoplhp7h
      x-internal: true
      description: Retrieve a `Receivable Invoice` for a given `Job` for a `Company`
      parameters: []
  /v1/companies/{company-id}/orders/{order-id}/invoices:
    parameters:
    - schema:
        type: string
        format: uuid
      name: company-id
      in: path
      required: true
      description: Company ID
    - schema:
        type: string
        format: uuid
      name: order-id
      in: path
      required: true
      description: Order ID
    - $ref: '#/components/parameters/Accept-Language'
    get:
      summary: Retrieve Invoices that belong to Jobs on an Order for a Company
      tags:
      - Invoices
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                required:
                - data
                properties:
                  data:
                    type: array
                    x-stoplight:
                      id: zcxlexqrcyizh
                    items:
                      $ref: '#/components/schemas/Invoice-Read'
        '401':
          $ref: '#/components/responses/UnauthenticatedError'
        '404':
          $ref: '#/components/responses/Error'
        '406':
          $ref: '#/components/responses/Error'
        '422':
          $ref: '#/components/responses/ModelError'
      parameters:
      - $ref: '#/components/parameters/filter-start_date'
      - $ref: '#/components/parameters/filter-end_date'
      - $ref: '#/components/parameters/filter-states'
      - $ref: '#/components/parameters/page-limit'
      - $ref: '#/components/parameters/page-before'
      - $ref: '#/components/parameters/page-after'
      - $ref: '#/components/parameters/filter-invoice_category'
      - $ref: '#/components/parameters/filter-grouped'
      - $ref: '#/components/parameters/filter-customer_account_ids'
      - $ref: '#/components/parameters/filter-vendor_account_ids'
      - $ref: '#/components/parameters/filter-pickup_site_ids'
      - $ref: '#/components/parameters/filter-dropoff_site_ids'
      - $ref: '#/components/parameters/filter-project_ids'
      - $ref: '#/components/parameters/filter-rate_types'
      - $ref: '#/components/parameters/filter-invoiceable_type'
      - $ref: '#/components/parameters/filter-driver_ids'
      - $ref: '#/components/parameters/search-datagrid'
      operationId: get-v1-companies-company-id-orders-order-id-invoices
      x-stoplight:
        id: qw32rcod0crun
      description: 'Retrieve `Invoices` that are on `Jobs` tied to an `Order` for a specific `Company`. '
  /v1/driver_days/{driver-day-id}/payable:
    parameters:
    - schema:
        type: string
        format: uuid
      name: driver-day-id
      in: path
      required: true
      description: DriverDay ID
    - $ref: '#/components/parameters/Accept-Language'
    get:
      summary: Retrieve a Payable Invoice for a given DriverDay
      tags:
      - Invoices
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                required:
                - data
                properties:
                  data:
                    $ref: '#/components/schemas/Invoice-Read'
        '401':
          $ref: '#/components/responses/UnauthenticatedError'
        '404':
          $ref: '#/components/responses/Error'
        '406':
          $ref: '#/components/responses/Error'
      operationId: get-v1-driver_days-driver-day-id-payable
      x-stoplight:
        id: 5jis0xgcq54ht
      x-internal: true
      description: Retrieve a `Payable Invoice` for a given `DriverDay`.
  /v1/jobs/{job-id}/payable:
    parameters:
    - schema:
        type: string
        format: uuid
      name: job-id
      in: path
      required: true
      description: Job ID
    - $ref: '#/components/parameters/Accept-Language'
    get:
      summary: Retrieve a Payable Invoice for a given Job
      tags:
      - Invoices
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                required:
                - data
                properties:
                  data:
                    $ref: '#/components/schemas/Invoice-Read'
        '400':
          $ref: '#/components/responses/Error'
        '401':
          $ref: '#/components/responses/UnauthenticatedError'
        '404':
          $ref: '#/components/responses/Error'
        '406':
          $ref: '#/components/responses/Error'
      operationId: get-v1-jobs-job-id-payable
      x-stoplight:
        id: wzx41h77exb35
      x-internal: true
      description: "Retrieve a `Payable Invoice` for a given `Job`. \n\nThis can be a `Payable` for a `Vendor` or a `Driver`. "
      parameters: []
  /v1/jobs/{job-id}/receivable:
    parameters:
    - schema:
        type: string
        format: uuid
      name: job-id
      in: path
      required: true
      description: Job ID
    - $ref: '#/components/parameters/Accept-Language'
    get:
      summary: Retrieve a Receivable for a given Job
      tags:
      - Invoices
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                required:
                - data
                properties:
                  data:
                    $ref: '#/components/schemas/Invoice-Read'
        '400':
          $ref: '#/components/responses/Error'
        '401':
          $ref: '#/components/responses/UnauthenticatedError'
        '404':
          $ref: '#/components/responses/Error'
        '406':
          $ref: '#/components/responses/Error'
      operationId: get-

# --- truncated at 32 KB (100 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/treadio/refs/heads/main/openapi/treadio-invoices-api-openapi.yml