Opply Inquiries API

The Inquiries API from Opply — 20 operation(s) for inquiries.

OpenAPI Specification

opply-inquiries-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Opply Activity Feed Inquiries API
  version: 0.0.0
tags:
- name: Inquiries
paths:
  /api/v1/inquiries/{inquiry_uuid}/documents/{uuid}/:
    delete:
      operationId: api_v1_inquiries_documents_destroy
      summary: '[''Delete documents of unpublished inquiry.'']'
      parameters:
      - in: path
        name: inquiry_uuid
        schema:
          type: string
        required: true
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        required: true
      tags:
      - Inquiries
      security:
      - tokenAuth: []
      - cookieAuth: []
      responses:
        '204':
          description: No response body
  /api/v1/inquiries/brand/:
    get:
      operationId: api_v1_inquiries_brand_list
      summary: List of all inquiries for a brand
      parameters:
      - in: query
        name: name
        schema:
          type: string
        description: Supports searching using a string/substring of product_name
      - in: query
        name: ordering
        schema:
          type: string
        description: Supports sorting by name state due_date created. Use - to filter backwards
      - name: page
        required: false
        in: query
        description: A page number within the paginated result set.
        schema:
          type: integer
      - name: page_size
        required: false
        in: query
        description: Number of results to return per page.
        schema:
          type: integer
      - in: query
        name: state
        schema:
          type: string
        description: 'Supported status: awaiting_quotes quotes_available ordered expired proceeded contract_confirmed supplier_decline_to_quote cancelled.'
      tags:
      - Inquiries
      security:
      - tokenAuth: []
      - cookieAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedInquiryListList'
          description: ''
    post:
      operationId: api_v1_inquiries_brand_create
      summary: Inquiry creation endpoint.
      tags:
      - Inquiries
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Inquiry'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/Inquiry'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/Inquiry'
        required: true
      security:
      - tokenAuth: []
      - cookieAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Inquiry'
          description: ''
  /api/v1/inquiries/brand/{uuid}/:
    get:
      operationId: api_v1_inquiries_brand_retrieve
      summary: Retrieve details of a request for a brand
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
        required: true
      tags:
      - Inquiries
      security:
      - tokenAuth: []
      - cookieAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InquiryResponse'
          description: ''
    put:
      operationId: api_v1_inquiries_brand_update
      summary: Endpoint to fully update a brand's inquiry.
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
        required: true
      tags:
      - Inquiries
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InquiryUpdate'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/InquiryUpdate'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/InquiryUpdate'
        required: true
      security:
      - tokenAuth: []
      - cookieAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InquiryUpdate'
          description: ''
    patch:
      operationId: api_v1_inquiries_brand_partial_update
      summary: Endpoint to partially update a brand's inquiry.
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
        required: true
      tags:
      - Inquiries
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedInquiry'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedInquiry'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedInquiry'
      security:
      - tokenAuth: []
      - cookieAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Inquiry'
          description: ''
    delete:
      operationId: api_v1_inquiries_brand_destroy
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
        required: true
      tags:
      - Inquiries
      security:
      - tokenAuth: []
      - cookieAuth: []
      responses:
        '204':
          description: No response body
  /api/v1/inquiries/brand/{uuid}/all-quotes/:
    get:
      operationId: api_v1_inquiries_brand_all_quotes_list
      summary: Endpoint to retrieve all quotes list for request details page. Marks all quotes as viewed on request details page.
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
        required: true
      tags:
      - Inquiries
      security:
      - tokenAuth: []
      - cookieAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/AllAndFeaturedQuotesForInquiry'
          description: ''
  /api/v1/inquiries/brand/{uuid}/channels/:
    get:
      operationId: api_v1_inquiries_brand_channels_list
      parameters:
      - name: ordering
        required: false
        in: query
        description: Which field to use when ordering the results.
        schema:
          type: string
      - name: page
        required: false
        in: query
        description: A page number within the paginated result set.
        schema:
          type: integer
      - name: page_size
        required: false
        in: query
        description: Number of results to return per page.
        schema:
          type: integer
      - in: path
        name: uuid
        schema:
          type: string
        required: true
      tags:
      - Inquiries
      security:
      - tokenAuth: []
      - cookieAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedChannelExpandedList'
          description: ''
  /api/v1/inquiries/brand/{uuid}/create-purchase-request/:
    post:
      operationId: api_v1_inquiries_brand_create_purchase_request_create
      summary: Create a purchase request for a contract
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
        required: true
      tags:
      - Inquiries
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PurchaseRequestCreate'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PurchaseRequestCreate'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PurchaseRequestCreate'
        required: true
      security:
      - tokenAuth: []
      - cookieAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PurchaseRequestResponse'
          description: ''
  /api/v1/inquiries/brand/{uuid}/documents/:
    get:
      operationId: api_v1_inquiries_brand_documents_list
      parameters:
      - in: query
        name: active_inquiries
        schema:
          type: boolean
      - in: query
        name: autocomplete_filter
        schema:
          type: string
      - in: query
        name: category
        schema:
          type: string
      - in: query
        name: name
        schema:
          type: string
      - name: ordering
        required: false
        in: query
        description: Which field to use when ordering the results.
        schema:
          type: string
      - name: page
        required: false
        in: query
        description: A page number within the paginated result set.
        schema:
          type: integer
      - name: page_size
        required: false
        in: query
        description: Number of results to return per page.
        schema:
          type: integer
      - in: query
        name: state
        schema:
          type: array
          items:
            type: string
            enum:
            - awaiting_quotes
            - cancelled
            - contract_confirmed
            - expired
            - ordered
            - proceeded
            - quotes_available
            - supplier_decline_to_quote
        description: '* `awaiting_quotes` - Awaiting Quotes

          * `quotes_available` - Quotes Available

          * `ordered` - Ordered

          * `expired` - Expired

          * `proceeded` - Proceeded

          * `contract_confirmed` - Contract Confirmed

          * `supplier_decline_to_quote` - Supplier Decline To Quote

          * `cancelled` - Cancelled'
        explode: true
        style: form
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        required: true
      tags:
      - Inquiries
      security:
      - tokenAuth: []
      - cookieAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedInquiryDocumentList'
          description: ''
  /api/v1/inquiries/brand/{uuid}/expire/:
    post:
      operationId: api_v1_inquiries_brand_expire_create
      summary: Force inquiry expiry. FOR QA USE ONLY!
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
        required: true
      tags:
      - Inquiries
      requestBody:
        content:
          application/json:
            schema:
              type: object
              additionalProperties: {}
              description: Unspecified request body
          application/x-www-form-urlencoded:
            schema:
              type: object
              additionalProperties: {}
              description: Unspecified request body
          multipart/form-data:
            schema:
              type: object
              additionalProperties: {}
              description: Unspecified request body
      security:
      - tokenAuth: []
      - cookieAuth: []
      responses:
        '200':
          description: No response body
  /api/v1/inquiries/brand/{uuid}/featured-quotes/:
    get:
      operationId: api_v1_inquiries_brand_featured_quotes_list
      summary: Endpoint to retrieve featured quotes list for request details page.
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
        required: true
      tags:
      - Inquiries
      security:
      - tokenAuth: []
      - cookieAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/AllAndFeaturedQuotesForInquiry'
          description: ''
  /api/v1/inquiries/brand/{uuid}/publish/:
    post:
      operationId: api_v1_inquiries_brand_publish_create
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
        required: true
      tags:
      - Inquiries
      security:
      - tokenAuth: []
      - cookieAuth: []
      responses:
        '204':
          description: No response body
  /api/v1/inquiries/brand/{uuid}/upload/:
    post:
      operationId: api_v1_inquiries_brand_upload_create
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
        required: true
      tags:
      - Inquiries
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InquiryDocument'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/InquiryDocument'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/InquiryDocument'
        required: true
      security:
      - tokenAuth: []
      - cookieAuth: []
      responses:
        '204':
          description: No response body
  /api/v1/inquiries/brand/dashboard-inquiries/:
    get:
      operationId: api_v1_inquiries_brand_dashboard_inquiries_list
      summary: Endpoint to retrieve requests list for Brand's dashboard.
      parameters:
      - name: page
        required: false
        in: query
        description: A page number within the paginated result set.
        schema:
          type: integer
      - name: page_size
        required: false
        in: query
        description: Number of results to return per page.
        schema:
          type: integer
      tags:
      - Inquiries
      security:
      - tokenAuth: []
      - cookieAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedDashboardInquiriesList'
          description: ''
  /api/v1/inquiries/internal/:
    get:
      operationId: api_v1_inquiries_internal_list
      parameters:
      - name: page
        required: false
        in: query
        description: A page number within the paginated result set.
        schema:
          type: integer
      - name: page_size
        required: false
        in: query
        description: Number of results to return per page.
        schema:
          type: integer
      tags:
      - Inquiries
      security:
      - tokenAuth: []
      - cookieAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedInquiryList'
          description: ''
  /api/v1/inquiries/internal/{uuid}/:
    get:
      operationId: api_v1_inquiries_internal_retrieve
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        required: true
      tags:
      - Inquiries
      security:
      - tokenAuth: []
      - cookieAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Inquiry'
          description: ''
  /api/v1/inquiries/supplier/:
    get:
      operationId: api_v1_inquiries_supplier_list
      summary: List of all inquiries for a supplier
      parameters:
      - in: query
        name: category
        schema:
          type: string
        description: 'Supported categories: non_recurring recurring purchase_request ingredient ingredient_copy.'
      - in: query
        name: name
        schema:
          type: string
        description: Supports searching using a string/substring of product_name
      - in: query
        name: ordering
        schema:
          type: string
        description: Supports sorting by name state due_date. Use - to filter backwards
      - name: page
        required: false
        in: query
        description: A page number within the paginated result set.
        schema:
          type: integer
      - name: page_size
        required: false
        in: query
        description: Number of results to return per page.
        schema:
          type: integer
      - in: query
        name: supplier_state
        schema:
          type: string
        description: 'Supported status: awaiting_quotes quotes_available ordered expired proceeded contract_confirmed supplier_decline_to_quote cancelled.'
      tags:
      - Inquiries
      security:
      - tokenAuth: []
      - cookieAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedSupplierInquiryListList'
          description: ''
  /api/v1/inquiries/supplier/{uuid}/:
    get:
      operationId: api_v1_inquiries_supplier_retrieve
      summary: Retrieve details of a request for a supplier
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
        required: true
      tags:
      - Inquiries
      security:
      - tokenAuth: []
      - cookieAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SupplierInquiryResponse'
          description: ''
  /api/v1/inquiries/supplier/{uuid}/channel/:
    get:
      operationId: api_v1_inquiries_supplier_channel_retrieve
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
        required: true
      tags:
      - Inquiries
      security:
      - tokenAuth: []
      - cookieAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChannelExpanded'
          description: ''
  /api/v1/inquiries/supplier/{uuid}/decline/:
    post:
      operationId: api_v1_inquiries_supplier_decline_create
      summary: Supplier decline to provide a quote for this inquiry
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
        required: true
      tags:
      - Inquiries
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InquiryDeclinedResponse'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/InquiryDeclinedResponse'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/InquiryDeclinedResponse'
        required: true
      security:
      - tokenAuth: []
      - cookieAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InquiryDeclinedResponse'
          description: ''
  /api/v1/inquiries/supplier/dashboard-inquiries/:
    get:
      operationId: api_v1_inquiries_supplier_dashboard_inquiries_list
      summary: Endpoint to retrieve awaiting quotes requests list for Supplier's dashboard.
      parameters:
      - name: page
        required: false
        in: query
        description: A page number within the paginated result set.
        schema:
          type: integer
      - name: page_size
        required: false
        in: query
        description: Number of results to return per page.
        schema:
          type: integer
      tags:
      - Inquiries
      security:
      - tokenAuth: []
      - cookieAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedDashboardInquiriesForSupplierList'
          description: ''
  /api/v1/inquiries/update_purchase_request/{uuid}/:
    put:
      operationId: api_v1_inquiries_update_purchase_request_update
      description: 'Update a purchase request after it has been created.

        https://app.clickup.com/t/863ghjhjj'
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
        required: true
      tags:
      - Inquiries
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdatePurchaseRequest'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/UpdatePurchaseRequest'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/UpdatePurchaseRequest'
        required: true
      security:
      - tokenAuth: []
      - cookieAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdatePurchaseRequest'
          description: ''
    patch:
      operationId: api_v1_inquiries_update_purchase_request_partial_update
      description: 'Update a purchase request after it has been created.

        https://app.clickup.com/t/863ghjhjj'
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
        required: true
      tags:
      - Inquiries
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedUpdatePurchaseRequest'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedUpdatePurchaseRequest'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedUpdatePurchaseRequest'
      security:
      - tokenAuth: []
      - cookieAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdatePurchaseRequest'
          description: ''
components:
  schemas:
    SupplierInquiryResponse:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        uuid:
          type: string
          format: uuid
          readOnly: true
        state:
          $ref: '#/components/schemas/InquiryState'
        category:
          $ref: '#/components/schemas/InquiryCategory'
        name:
          type: string
          maxLength: 255
        current_unit_price:
          type: string
          format: decimal
          pattern: ^-?\d{0,8}(?:\.\d{0,2})?$
        target_unit_price:
          type: string
          format: decimal
          pattern: ^-?\d{0,8}(?:\.\d{0,2})?$
        currency:
          $ref: '#/components/schemas/Currencies'
        description:
          type: string
        quantity:
          type: string
          format: decimal
          pattern: ^-?\d{0,8}(?:\.\d{0,2})?$
        unit_of_measurement:
          $ref: '#/components/schemas/UnitOfMeasurementEnum'
        allergen_requirements:
          type: array
          items:
            oneOf:
            - $ref: '#/components/schemas/AllergenRequirementsEnum'
            - $ref: '#/components/schemas/BlankEnum'
        allergen_declaration:
          type: boolean
        dietary_certificate:
          type: boolean
        diet_requirements:
          type: array
          items:
            oneOf:
            - $ref: '#/components/schemas/DietRequirementsEnum'
            - $ref: '#/components/schemas/BlankEnum'
        forecast:
          nullable: true
          oneOf:
          - $ref: '#/components/schemas/ForecastEnum'
          - $ref: '#/components/schemas/BlankEnum'
          - $ref: '#/components/schemas/NullEnum'
        due_date:
          type: string
          format: date
        delivery_address:
          allOf:
          - $ref: '#/components/schemas/DeliveryAddressForSupplier'
          readOnly: true
        supplier_countries:
          type: array
          items:
            oneOf:
            - $ref: '#/components/schemas/Country'
            - $ref: '#/components/schemas/BlankEnum'
          maxItems: 250
        current_supplier:
          type: string
        published:
          type: string
          format: date-time
          nullable: true
          description: Datetime when the inquiry becomes published. Leave empty to keep it unpublished.
        logo_url:
          type: string
          format: uri
          maxLength: 2048
        is_new:
          type: boolean
          readOnly: true
        article:
          type: string
          format: uuid
          nullable: true
        existing_suppliers:
          type: array
          items:
            type: string
            format: uuid
          readOnly: true
          nullable: true
        supply_priorities:
          type: array
          items:
            $ref: '#/components/schemas/SupplyPriorities'
        first_order_delivery_date:
          type: string
          format: date
          nullable: true
        opply_brand_commission:
          type: string
          format: decimal
          pattern: ^-?\d{0,7}(?:\.\d{0,2})?$
        opply_supplier_commission:
          type: string
          format: decimal
          pattern: ^-?\d{0,7}(?:\.\d{0,2})?$
        is_recurring:
          type: boolean
          default: false
        frequency:
          nullable: true
          oneOf:
          - $ref: '#/components/schemas/FrequencyEnum'
          - $ref: '#/components/schemas/BlankEnum'
          - $ref: '#/components/schemas/NullEnum'
        desired_contract_length:
          type: integer
          minimum: 0
          nullable: true
        is_delivery_date_flexible:
          type: boolean
        parent_uuid:
          type: string
          format: uuid
          nullable: true
        ingredient:
          type: integer
          nullable: true
        reason_for_request:
          type: string
          nullable: true
        desired_packaging_format:
          type: string
        desired_packaging_format_is_flexible:
          type: boolean
        ai_generated:
          type: boolean
        documents_to_copy:
          type: array
          items:
            type: string
            format: uuid
          nullable: true
        orders_uuid:
          type: array
          items:
            type: string
            format: uuid
          readOnly: true
        existing_supplier_uuid:
          type: string
          format: uuid
        total_forecast_quantity:
          type: string
          readOnly: true
        original_quote_uuid:
          type: string
          format: uuid
          readOnly: true
        declined:
          type: string
          readOnly: true
        decline_reason:
          type: string
          readOnly: true
        company_address:
          allOf:
          - $ref: '#/components/schemas/Address'
          readOnly: true
        progress:
          type: string
          readOnly: true
        possible_suppliers:
          type: string
          readOnly: true
        suppliers_found:
          type: string
          readOnly: true
        number_of_quotes:
          type: string
          readOnly: true
        company:
          allOf:
          - $ref: '#/components/schemas/Company'
          readOnly: true
        existing_supplier_name:
          type: string
          readOnly: true
        supplier_matching:
          type: string
          readOnly: true
        total_forecast_spend:
          type: string
          readOnly: true
        published_quote_uuid:
          type: string
          default: ''
        supplier_state:
          allOf:
          - $ref: '#/components/schemas/SupplierStateEnum'
          readOnly: true
        buyer_contact_name:
          type: string
          readOnly: true
        buyer_full_name:
          type: string
          readOnly: true
        commission_payout_vat_rate:
          type: string
          readOnly: true
      required:
      - buyer_contact_name
      - buyer_full_name
      - commission_payout_vat_rate
      - company
      - company_address
      - current_unit_price
      - decline_reason
      - declined
      - delivery_address
      - description
      - due_date
      - existing_supplier_name
      - existing_supplier_uuid
      - existing_suppliers
      - id
      - is_new
      - name
      - number_of_quotes
      - orders_uuid
      - original_quote_uuid
      - possible_suppliers
      - progress
      - quantity
      - supplier_countries
      - supplier_matching
      - supplier_state
      - suppliers_found
      - target_unit_price
      - total_forecast_quantity
      - total_forecast_spend
      - uuid
    QuoteState:
      enum:
      - available
      - ordered
      - expired
      - declined
      - pending_payment
      - proceeded
      - contract_created
      - contract_proceeded
      - contract_confirmed
      type: string
      description: '* `available` - available

        * `ordered` - ordered

        * `expired` - expired

        * `declined` - declined

        * `pending_payment` - pending_payment

        * `proceeded` - proceeded

        * `contract_created` - Contract Created

        * `contract_proceeded` - contract_proceeded

        * `contract_confirmed` - contract_confirmed'
    ProductTypeEnum:
      enum:
      - confect_snacks
      - conv_food
      - bread_cereals
      - sauces_spices
      - spreads
      - tea
      - coffee
      - water
      - carb_drinks
      - alc_drinks
      - juice_drinks
      - energy_drinks
      - cosmetics
      - milk_dairy
      - free_form_alt
      - other
      type: string
      description: '* `confect_snacks` - Confectionery & Snacks

        * `conv_food` - Convenience Food

        * `bread_cereals` - Bread & Cereals

        * `sauces_spices` - Sauces & Spices

        * `spreads` - Spreads

        * `tea` - Tea

        * `coffee` - Coffee

        * `water` - Water

        * `carb_drinks` - Carbonated Drinks

        * `alc_drinks` - Alcoholic Drinks

        * `juice_drinks` - Juice Drinks

        * `energy_drinks` - Energy Drinks

        * `cosmetics` - Cosmetics

        * `milk_dairy` - Milk & Dairy

        * `free_form_alt` - Free Form Alternative

        * `other` - Other'
    InquiryList:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        uuid:
          type: string
          format: uuid
          readOnly: true
        state:
          $ref: '#/components/schemas/InquiryState'
        category:
          $ref: '#/components/schemas/InquiryCategory'
        name:
          type: string
          maxLength: 255
        current_unit_price:
          type: string
          format: decimal
          pattern: ^-?\d{0,8}(?:\.\d{0,2})?$
        target_unit_price:
          type: string
          format: decimal
          pattern: ^-?\d{0,8}(?:\.\d{0,2})?$
        currency:
          $ref: '#/components/schemas/Currencies'
        description:
          type: string
        quantity:
          type: string
          format: decimal
          pattern: ^-?\d{0,8}(?:\.\d{0,2})?$
        unit_of_measurement:
          $ref: '#/components/schemas/UnitOfMeasurementEnum'
        allergen_requirements:
          type: array
          items:
            oneOf:
            - $ref: '#/components/schemas/AllergenRequirementsEnum'
            - $ref: '#/components/schemas/BlankEnum'
        allergen_declaration:
          type: boolean
        dietary_certificate:
          type: boolean
        diet_requirements:
          type: array
          items:
            oneOf:
            - $ref: '#/components/schemas/DietRequirementsEnum'
            - $ref: '#/components/schemas/BlankEnum'
        forecast:
          nullable: true
          oneOf:
          - $ref: '#/components/schemas/ForecastEnum'
          - $ref: '#/components/schemas/BlankEnum'
          - $ref: '#/components/schemas/NullEnum'
        due_date:
          type: string
          format: date
        delivery_address:
          type: integer
          nullable: true
        supplier_countries:
          type: array
          items:
            oneOf:
            - $ref: '#/components/schemas/Country'
            - $ref: '#/components/schemas/BlankEnum'
          maxItems: 250
        current_supplier:
          type: string
        published:
          type: string
          format: date-time
          nullable: true
          description: Datetime when the inquiry becomes published. Leave empty to keep it unpublished.
        logo_url:
          type: string
          format: uri
          maxLength: 2048
        is_new:
          type: boolean
          readOnly: true
        article:
          type: string
    

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