openapi: 3.0.1
info:
    title: LiveBillAPI
    version: 1.0.1
    termsOfService: https://livebill.aki-innovations.net/tnc
    description: >
        Internal Use Only
servers:    
    - url: https://api.livebill.aki-innovations.net/
      description: Production Environment      
paths:
    /feedback/pricetag_issue/:
        post:
            summary: Send Scan Error Feedback 
            tags:
                - Feedback Messages
            description: >
                Takes feedback information issued by the "Report Issue" function 
                within the price tag scanning process.
            requestBody:
                required: true
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                notes: 
                                    type: string
                                    description: >
                                        Some information about the price tag issue (optional)
                                image:
                                    type: string
                                    format: byte
                                    description: >
                                        The image data as a base64-encoded string
                            required: 
                                - image

            responses:
                '200':
                    description: >
                        The report was noticed.
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    ticketid:
                                        type:   string
                                        format: uuid
                                required:
                                    - ticketid
                '400':
                    $ref: '#/components/responses/Error400'
                '401':
                    $ref: '#/components/responses/Error401'
                '403':
                    $ref: '#/components/responses/Error403'

components:
    responses:
        Error401:
            description: >
                You are not allowed to perform this action.
            content:
                application/json:
                    schema:
                        type: object
                        properties:
                            message:
                                type: string
                        required: 
                            - message
        Error403:
            description: >
                The provided information was not suitable for the call.
            content:
                application/json:
                    schema:
                        type: object
                        properties:
                            error:
                                type: object
                                properties:
                                    message:
                                        type: string
                                        description: >
                                            A description of what went wrong.
                                    code:
                                        type: integer
                                        description: >
                                            A unique error code further referencing the nature of the error.
                                            This can be used to handle different errors in different ways.


                                            The possible error codes returned are subject to the respective action called.
                                required:
                                    - message
                                    - code
                        required:
                            - error

        Error400:
            description: >
                The content body did not contain valid JSON or did not match the request format.
            content:
                application/json:
                    schema:
                        type: object
                        properties:
                            message:
                                type: string
                        required: 
                            - message
                        