Phasio Manufacturer Material Prices Controller API

Endpoints for managing material pricing configuration

OpenAPI Specification

phasio-manufacturer-material-prices-controller-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Phasio Activity Internal Manufacturer Material Prices Controller API
  description: This is the API documentation for the Phasio application.
  version: '1.0'
servers:
- url: https://m-api.eu.phas.io
  description: Generated server url
security:
- Phasio API Bearer Token: []
tags:
- name: Manufacturer Material Prices Controller
  description: Endpoints for managing material pricing configuration
paths:
  /api/manufacturer/v1/material-prices:
    post:
      tags:
      - Manufacturer Material Prices Controller
      summary: Create material prices
      description: Creates a new material pricing configuration
      operationId: createMaterialPrices
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateMaterialPricesDto'
        required: true
      responses:
        '200':
          description: Material prices successfully created
          content:
            application/json:
              schema:
                type: integer
                format: int64
        '400':
          description: Invalid material prices data
        '401':
          description: Unauthorized - operator not found
    patch:
      tags:
      - Manufacturer Material Prices Controller
      summary: Update material prices
      description: Updates an existing material pricing configuration
      operationId: updateMaterialPrices
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateMaterialPricesDto'
        required: true
      responses:
        '204':
          description: Material prices successfully updated
        '400':
          description: Invalid update data or material prices not found
  /api/manufacturer/v1/material-prices/duplicate/create:
    post:
      tags:
      - Manufacturer Material Prices Controller
      summary: Create duplicate material prices
      description: Creates a duplicate of an existing material pricing configuration with a new name
      operationId: createDuplicateMaterialPrices
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DuplicateMaterialPricesDto'
        required: true
      responses:
        '200':
          description: Duplicate material prices successfully created
          content:
            application/json:
              schema:
                type: integer
                format: int64
        '400':
          description: Invalid duplication request or source material prices not found
  /api/manufacturer/v1/material-prices/{materialPricesId}/default:
    patch:
      tags:
      - Manufacturer Material Prices Controller
      summary: Set material prices as default
      description: Sets a material pricing configuration as the default for its material
      operationId: selectDefaultMaterialPrices
      parameters:
      - name: materialPricesId
        in: path
        description: ID of the material prices to set as default
        required: true
        schema:
          type: integer
          format: int64
      responses:
        '204':
          description: Material prices successfully set as default
        '400':
          description: Invalid material prices ID or operation failed
  /api/manufacturer/v1/material-prices/{materialPricesId}/default/unselect:
    patch:
      tags:
      - Manufacturer Material Prices Controller
      summary: Unset material prices as default
      description: Removes the default status from a material pricing configuration
      operationId: unselectDefaultMaterialPrices
      parameters:
      - name: materialPricesId
        in: path
        description: ID of the material prices to unset as default
        required: true
        schema:
          type: integer
          format: int64
      responses:
        '204':
          description: Default status successfully removed
        '400':
          description: Invalid material prices ID or operation failed
  /api/manufacturer/v1/material-prices/{id}:
    get:
      tags:
      - Manufacturer Material Prices Controller
      summary: Get material prices by ID
      description: Retrieves material pricing configuration by its unique identifier
      operationId: get_22
      parameters:
      - name: id
        in: path
        description: ID of the material prices to retrieve
        required: true
        schema:
          type: integer
          format: int64
      responses:
        '200':
          description: Successfully retrieved material prices
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EquationMaterialPricesDto'
        '404':
          description: Material prices not found
  /api/manufacturer/v1/material-prices/{materialPricesId}/delete:
    delete:
      tags:
      - Manufacturer Material Prices Controller
      summary: Delete material prices
      description: Deletes an existing material pricing configuration
      operationId: deleteMaterialPrices
      parameters:
      - name: materialPricesId
        in: path
        description: ID of the material prices to delete
        required: true
        schema:
          type: integer
          format: int64
      responses:
        '204':
          description: Material prices successfully deleted
        '400':
          description: Invalid material prices ID or deletion failed
components:
  schemas:
    CreateColorDto:
      type: object
      properties:
        code:
          type: string
        name:
          type: string
      required:
      - code
      - name
    PricingEquationVariableValueDto:
      type: object
      properties:
        id:
          type: string
          format: uuid
        name:
          type: string
        placeholder:
          type: string
        value:
          type: number
      required:
      - id
      - name
      - placeholder
      - value
    VariableValueDto:
      type: object
      properties:
        variableId:
          type: string
          format: uuid
        value:
          type: number
      required:
      - value
      - variableId
    EquationMaterialPricesDto:
      type: object
      properties:
        materialPricesId:
          type: integer
          format: int64
        operatorId:
          type: integer
          format: int64
        technology:
          type: string
        materialId:
          type: integer
          format: int64
        materialName:
          type: string
        effectiveFrom:
          type: string
          format: date
        quoteOnly:
          type: boolean
        colorDtos:
          type: array
          items:
            $ref: '#/components/schemas/ColorDto'
        referenceText:
          type: string
        pricingAlgoType:
          type: string
        isDefault:
          type: boolean
        datasheet:
          type: string
        wallThicknessWarning:
          type: number
        wallThicknessLimit:
          type: number
        isDeleted:
          type: boolean
        pricingEquationVariableValueDtos:
          type: array
          items:
            $ref: '#/components/schemas/PricingEquationVariableValueDto'
        density:
          type: number
      required:
      - colorDtos
      - density
      - effectiveFrom
      - isDefault
      - materialId
      - materialName
      - materialPricesId
      - operatorId
      - pricingAlgoType
      - pricingEquationVariableValueDtos
      - quoteOnly
      - technology
    CreateMaterialPricesDto:
      type: object
      description: Material prices to create
      properties:
        customerOrganisationId:
          type: integer
          format: int64
        processPricesId:
          type: string
          format: uuid
        datasheet:
          type: string
        name:
          type: string
        quoteOnly:
          type: boolean
        effectiveFrom:
          type: string
          format: date
        colors:
          type: array
          items:
            $ref: '#/components/schemas/CreateColorDto'
        referenceText:
          type: string
        wallThicknessWarning:
          type: number
        wallThicknessLimit:
          type: number
        density:
          type: number
        variableValues:
          type: array
          items:
            $ref: '#/components/schemas/VariableValueDto'
      required:
      - colors
      - datasheet
      - density
      - effectiveFrom
      - name
      - processPricesId
      - quoteOnly
      - variableValues
    UpdateMaterialPricesDto:
      type: object
      description: Updated material prices data
      properties:
        materialPricesId:
          type: integer
          format: int64
        datasheet:
          type: string
        effectiveFrom:
          type: string
          format: date
        quoteOnly:
          type: boolean
        colors:
          type: array
          items:
            $ref: '#/components/schemas/CreateColorDto'
        referenceText:
          type: string
        wallThicknessWarning:
          type: number
        wallThicknessLimit:
          type: number
        density:
          type: number
        variableValues:
          type: array
          items:
            $ref: '#/components/schemas/VariableValueDto'
      required:
      - colors
      - datasheet
      - density
      - effectiveFrom
      - materialPricesId
      - quoteOnly
      - variableValues
    ColorDto:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
        code:
          type: string
      required:
      - code
      - id
      - name
    DuplicateMaterialPricesDto:
      type: object
      description: Duplication details
      properties:
        materialPricesId:
          type: integer
          format: int64
        materialName:
          type: string
      required:
      - materialName
      - materialPricesId
  securitySchemes:
    Phasio API Bearer Token:
      type: http
      name: Authorization
      in: header
      scheme: bearer
      bearerFormat: JWT