Pax8 Quote sections API

The Quote sections API from Pax8 — 1 operation(s) for quote sections.

OpenAPI Specification

pax8-quote-sections-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Authentication Access Token Quote sections API
  version: 1.0.0
  termsOfService: https://usc.pax8.com/resource/display/65345
  description: The Access Token that allows access to the Pax8 API
servers:
- url: https://api.pax8.com/v1
security:
- OAuth2: []
tags:
- name: Quote sections
paths:
  /v2/quotes/{quoteId}/sections:
    get:
      description: Returns a list of sections associated to the specified quoteId.
      operationId: getSections
      parameters:
      - in: path
        name: quoteId
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SectionsResponse'
          description: OK - Returns the sections of the quote.
        '400':
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Bad Request - Invalid quote ID.
        '403':
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Authorization Error - Access denied.
      summary: Get quote sections
      tags:
      - Quote sections
    post:
      description: Creates a new section within a specified quote to organize line items.
      operationId: createSection
      parameters:
      - in: path
        name: quoteId
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateSectionPayload'
        required: true
      responses:
        '201':
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SectionsResponse'
          description: Created
        '400':
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Bad Request
        '403':
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Authorization Error
      summary: Create Section
      tags:
      - Quote sections
    put:
      description: Update sections within a specified quote.
      operationId: updateSections
      parameters:
      - in: path
        name: quoteId
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SectionsPayload'
        required: true
      responses:
        '200':
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SectionsResponse'
          description: OK
        '400':
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Bad Request
        '403':
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Authorization Error
      summary: Update Sections
      tags:
      - Quote sections
components:
  schemas:
    ErrorDetails:
      type: object
      properties:
        message:
          type: string
        type:
          type: string
          enum:
          - ACCESS_DENIED_IMPERSONATION
          - ACCESS_DENIED_REQUESTED_RESOURCE
          - ACCESS_LIST_LIMIT_EXCEEDED
          - CLIENT_ACCESS_DENIED
          - RESOURCE_NOT_FOUND
          - BAD_REQUEST
          - FAILED_ORDER_VALIDATION
          - INVALID_REQUEST_FIELD
          - QUOTE_NOT_FOUND
          - QUOTE_INVALID_STATUS
          - QUOTE_VALIDATION
          - QUOTE_EMIT_FAILED
          - CREATE_QUOTE_FAILED
          - QUOTE_ALREADY_DELETED
          - QUOTE_NOT_VALID
          - QUOTE_UPSERT_FAILED
          - QUOTE_COMPANY_PARTNER_COMPATIBILITY_CHECK_FAILED
          - QUOTE_REQUEST_COMPANY_COMPATIBILITY_CHECK_FAILED
          - QUOTE_ADD_LINE_ITEMS_FAILED
          - USER_NOT_FOUND
          - PARTNER_NOT_FOUND
          - LINE_ITEM_NOT_FOUND
          - QUOTE_LINE_ITEM_NOT_FOUND
          - SAVE_LINE_ITEM_FAILED
          - REQUEST_VALIDATION_FAILED
          - UNAUTHORIZED_ERROR
          - LINE_ITEM_LIMIT_EXCEEDED
          - DUPLICATE_QUOTE_WITH_EMPTY_LINE_ITEMS
          - DUPLICATE_QUOTE_VALIDATE_ALLOWED_PRODUCTS_FAILED
          - DUPLICATE_QUOTE_NO_PRODUCTS_ALLOWED
          - QUOTE_VALIDATION_TRIAL_PARENT_RESTRICTION
          - QUOTE_INVALID_RESPONSE
          - COMPANY_NOT_PROVIDED
          - COMPANY_PARTNER_COMPATIBILITY_MISMATCH
          - USER_LEVEL_CHECK_FAILED
          - QUOTE_REQUEST_NOT_FOUND
          - QUOTE_ACCESS_EMAIL_EXISTS
          - QUOTE_ACCESS_ENTRY_NOT_FOUND
          - QUOTE_ACCESS_ENTRY_INVALID_QUOTE_ID
          - USER_LEVEL_CHECK_FAILED_COMPANY
          - INVALID_REQUEST_PARAMETER
          - INVALID_USER_LEVEL
          - INVALID_REQUEST_BODY
          - BRANDING_NOT_FOUND
          - VIEW_NOT_FOUND
          - INTERNAL_EXCEPTION
          - REFERENCE_CODE_GENERATION_EXCEPTION
          - USAGE_BASED_PARAMETERS_MISCONFIGURATION
          - UNKNOWN_CURRENCY
          - UNKNOWN_ERROR
          - UNPROCESSABLE_INPUT
          - PAYLOAD_VALIDATION
          - MAX_ATTACHMENTS_EXCEEDED
          - LIBRARY_MAX_ATTACHMENTS_EXCEEDED
          - PREFERENCE_MAX_ATTACHMENTS_EXCEEDED
          - DUPLICATE_QUOTE_ATTACHMENT
          - QUOTE_ATTACHMENT_NOT_FOUND
          - LIBRARY_ATTACHMENT_NOT_FOUND
          - PREFERENCE_ATTACHMENT_NOT_FOUND
          - LIBRARY_ATTACHMENT_ALREADY_EXISTS
          - ATTACHMENT_NOT_FOUND
          - QUOTE_ATTACHMENT_UNSUPPORTED_ORDER_INDEX
          - LIBRARY_ATTACHMENT_UNSUPPORTED_ORDER_INDEX
          - PREFERENCE_ATTACHMENT_UNSUPPORTED_ORDER_INDEX
          - DUPLICATE_PREFERENCE_ATTACHMENT
          - QUOTE_ALREADY_OWNED
          - EXECUTION_VALIDATION
          - SHADOW_COMPANY_EXPECTED
          - CUSTOMER_COMPANY_EXPECTED
          - QUOTE_ACCESS_USERID_EXISTS
      required:
      - message
      - type
    SectionsPayload:
      type: object
      properties:
        sections:
          type: array
          items:
            $ref: '#/components/schemas/SectionPayload'
      required:
      - sections
    ErrorResponse:
      type: object
      properties:
        details:
          type: array
          items:
            $ref: '#/components/schemas/ErrorDetails'
        instance:
          type: string
        message:
          type: string
        status:
          type: integer
          format: int32
        type:
          type: string
      required:
      - details
      - instance
      - message
      - status
      - type
    CreateSectionPayload:
      type: object
      properties:
        name:
          type: string
      required:
      - name
    SectionLineItem:
      type: object
      properties:
        lineItemId:
          type: string
          format: uuid
        order:
          type: integer
          format: int32
      required:
      - lineItemId
      - order
    SectionsResponse:
      type: object
      properties:
        sections:
          type: array
          items:
            $ref: '#/components/schemas/Section'
      required:
      - sections
    Section:
      type: object
      properties:
        id:
          type: string
          format: uuid
        lineItems:
          type: array
          items:
            $ref: '#/components/schemas/SectionLineItem'
        name:
          type: string
        order:
          type: integer
          format: int32
      required:
      - id
      - lineItems
      - name
      - order
    SectionPayload:
      type: object
      properties:
        id:
          type: string
          format: uuid
        lineItems:
          type: array
          items:
            $ref: '#/components/schemas/SectionLineItem'
        name:
          type: string
        order:
          type: integer
          format: int32
      required:
      - id
      - lineItems
      - name
      - order
  securitySchemes:
    OAuth2:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://token-manager.pax8.com/oauth/token
          scopes: {}