openapi: 3.0.3
info:
  title: 'NAV API'
  description: ''
  version: 1.0.0
servers:
  -
    url: 'http://navapi.localhost'
paths:
  /approval:
    post:
      summary: 'Post an registration and credit limit approval.'
      description: "This endpoint allows you to update a user's credit limit in the AM system."
      parameters:
        -
          in: query
          name: api_token
          description: 'Authentication key.'
          example: '{YOUR_AUTH_KEY}'
          required: true
          schema:
            type: string
            description: 'Authentication key.'
            example: '{YOUR_AUTH_KEY}'
        -
          in: query
          name: websiteId
          description: '- it has to be an existing user in am_users and am_field_values (for credit limit field)'
          example: ex
          required: true
          schema:
            type: string
            description: '- it has to be an existing user in am_users and am_field_values (for credit limit field)'
            example: ex
        -
          in: query
          name: creditLimit
          description: ''
          example: 0.3
          required: true
          schema:
            type: number
            description: ''
            example: 0.3
        -
          in: query
          name: registerApproval
          description: ''
          example: unde
          required: true
          schema:
            type: string
            description: ''
            example: unde
        -
          in: header
          name: Content-Type
          description: ''
          example: application/xml
          schema:
            type: string
        -
          in: header
          name: Accept
          description: ''
          example: application/json
          schema:
            type: string
      responses: {  }
      tags:
        - Approvals
  '/approval/{id}':
    put:
      summary: 'Update credit limit'
      description: "This endpoint allows you to update a user's credit limit in the AM system."
      parameters:
        -
          in: query
          name: api_token
          description: 'Authentication key.'
          example: '{YOUR_AUTH_KEY}'
          required: true
          schema:
            type: string
            description: 'Authentication key.'
            example: '{YOUR_AUTH_KEY}'
        -
          in: header
          name: Content-Type
          description: ''
          example: application/xml
          schema:
            type: string
        -
          in: header
          name: Accept
          description: ''
          example: application/json
          schema:
            type: string
      responses: {  }
      tags:
        - Approvals
    delete:
      summary: Undefined
      description: ''
      parameters:
        -
          in: query
          name: api_token
          description: 'Authentication key.'
          example: '{YOUR_AUTH_KEY}'
          required: true
          schema:
            type: string
            description: 'Authentication key.'
            example: '{YOUR_AUTH_KEY}'
        -
          in: header
          name: Content-Type
          description: ''
          example: application/xml
          schema:
            type: string
        -
          in: header
          name: Accept
          description: ''
          example: application/json
          schema:
            type: string
      responses: {  }
      tags:
        - Approvals
    parameters:
      -
        in: path
        name: id
        description: ''
        example: modi
        required: true
        schema:
          type: string
  /catalogue_layout:
    post:
      summary: 'Post an registration and credit limit approval.'
      description: "This endpoint allows you to update a user's credit limit in the AM system."
      parameters:
        -
          in: query
          name: api_token
          description: 'Authentication key.'
          example: '{YOUR_AUTH_KEY}'
          required: true
          schema:
            type: string
            description: 'Authentication key.'
            example: '{YOUR_AUTH_KEY}'
        -
          in: query
          name: websiteId
          description: '- it has to be an existing user in am_users and am_field_values (for credit limit field)'
          example: sapiente
          required: true
          schema:
            type: string
            description: '- it has to be an existing user in am_users and am_field_values (for credit limit field)'
            example: sapiente
        -
          in: query
          name: creditLimit
          description: ''
          example: 81.52429062
          required: true
          schema:
            type: number
            description: ''
            example: 81.52429062
        -
          in: query
          name: registerApproval
          description: ''
          example: recusandae
          required: true
          schema:
            type: string
            description: ''
            example: recusandae
        -
          in: header
          name: Content-Type
          description: ''
          example: application/xml
          schema:
            type: string
        -
          in: header
          name: Accept
          description: ''
          example: application/json
          schema:
            type: string
      responses: {  }
      tags:
        - 'Catalogue layout management'
  '/catalogue_layout/{id}':
    put:
      summary: Update
      description: ''
      parameters:
        -
          in: query
          name: api_token
          description: 'Authentication key.'
          example: '{YOUR_AUTH_KEY}'
          required: true
          schema:
            type: string
            description: 'Authentication key.'
            example: '{YOUR_AUTH_KEY}'
        -
          in: header
          name: Content-Type
          description: ''
          example: application/xml
          schema:
            type: string
        -
          in: header
          name: Accept
          description: ''
          example: application/json
          schema:
            type: string
      responses: {  }
      tags:
        - 'Catalogue layout management'
    delete:
      summary: Undefined
      description: ''
      parameters:
        -
          in: query
          name: api_token
          description: 'Authentication key.'
          example: '{YOUR_AUTH_KEY}'
          required: true
          schema:
            type: string
            description: 'Authentication key.'
            example: '{YOUR_AUTH_KEY}'
        -
          in: header
          name: Content-Type
          description: ''
          example: application/xml
          schema:
            type: string
        -
          in: header
          name: Accept
          description: ''
          example: application/json
          schema:
            type: string
      responses: {  }
      tags:
        - 'Catalogue layout management'
    parameters:
      -
        in: path
        name: id
        description: ''
        example: voluptatibus
        required: true
        schema:
          type: string
  /document:
    post:
      summary: 'Post an registration and credit limit approval.'
      description: "This endpoint allows you to update a user's credit limit in the AM system."
      parameters:
        -
          in: query
          name: api_token
          description: 'Authentication key.'
          example: '{YOUR_AUTH_KEY}'
          required: true
          schema:
            type: string
            description: 'Authentication key.'
            example: '{YOUR_AUTH_KEY}'
        -
          in: query
          name: websiteId
          description: '- it has to be an existing user in am_users and am_field_values (for credit limit field)'
          example: quasi
          required: true
          schema:
            type: string
            description: '- it has to be an existing user in am_users and am_field_values (for credit limit field)'
            example: quasi
        -
          in: query
          name: creditLimit
          description: ''
          example: 4347.3751444
          required: true
          schema:
            type: number
            description: ''
            example: 4347.3751444
        -
          in: query
          name: registerApproval
          description: ''
          example: repellendus
          required: true
          schema:
            type: string
            description: ''
            example: repellendus
        -
          in: header
          name: Content-Type
          description: ''
          example: application/xml
          schema:
            type: string
        -
          in: header
          name: Accept
          description: ''
          example: application/json
          schema:
            type: string
      responses: {  }
      tags:
        - 'Document management'
  '/document/{id}':
    put:
      summary: ''
      description: ''
      parameters:
        -
          in: query
          name: api_token
          description: 'Authentication key.'
          example: '{YOUR_AUTH_KEY}'
          required: true
          schema:
            type: string
            description: 'Authentication key.'
            example: '{YOUR_AUTH_KEY}'
        -
          in: header
          name: Content-Type
          description: ''
          example: application/xml
          schema:
            type: string
        -
          in: header
          name: Accept
          description: ''
          example: application/json
          schema:
            type: string
      responses: {  }
      tags:
        - 'Document management'
    delete:
      summary: Undefined
      description: ''
      parameters:
        -
          in: query
          name: api_token
          description: 'Authentication key.'
          example: '{YOUR_AUTH_KEY}'
          required: true
          schema:
            type: string
            description: 'Authentication key.'
            example: '{YOUR_AUTH_KEY}'
        -
          in: header
          name: Content-Type
          description: ''
          example: application/xml
          schema:
            type: string
        -
          in: header
          name: Accept
          description: ''
          example: application/json
          schema:
            type: string
      responses: {  }
      tags:
        - 'Document management'
    parameters:
      -
        in: path
        name: id
        description: ''
        example: delectus
        required: true
        schema:
          type: string
  /image:
    post:
      summary: 'Post an image.'
      description: "This endpoint allows you to add an image to the AM system linked to a lot.\n\n<aside class=\"notice\">The relatedSystemId has to be an existing lot in the db</aside>"
      parameters:
        -
          in: query
          name: api_token
          description: 'Authentication key.'
          example: '{YOUR_AUTH_KEY}'
          required: true
          schema:
            type: string
            description: 'Authentication key.'
            example: '{YOUR_AUTH_KEY}'
        -
          in: query
          name: lot_id
          description: ''
          example: ut
          required: true
          schema:
            type: string
            description: ''
            example: ut
        -
          in: query
          name: sort_no
          description: ''
          example: quam
          required: true
          schema:
            type: string
            description: ''
            example: quam
        -
          in: query
          name: media_type
          description: ''
          example: 7454.173353
          required: true
          schema:
            type: number
            description: ''
            example: 7454.173353
        -
          in: query
          name: image
          description: ''
          example: qui
          required: true
          schema:
            type: string
            description: ''
            example: qui
        -
          in: header
          name: Content-Type
          description: ''
          example: multipart/form-data
          schema:
            type: string
        -
          in: header
          name: Accept
          description: ''
          example: application/json
          schema:
            type: string
      responses: {  }
      tags:
        - 'Image management for Non-NAV clients'
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                sort_no:
                  type: number
                  description: ''
                  example: 457.48824
                image:
                  type: string
                  format: binary
                  description: 'Must be an image. Must not be greater than 50000000 kilobytes.'
              required:
                - sort_no
                - image
  /image/sort:
    post:
      summary: 'Update sort order.'
      description: "This endpoint allows to bulk update the sort order of images in the AM system.\n\n<aside class=\"notice\">The SystemId has to be an existing entry in the db</aside>"
      parameters:
        -
          in: query
          name: api_token
          description: 'Authentication key.'
          example: '{YOUR_AUTH_KEY}'
          required: true
          schema:
            type: string
            description: 'Authentication key.'
            example: '{YOUR_AUTH_KEY}'
        -
          in: query
          name: imageId
          description: ''
          example: dolores
          required: true
          schema:
            type: string
            description: ''
            example: dolores
        -
          in: query
          name: ordering
          description: ''
          example: 2467.065868141
          required: true
          schema:
            type: number
            description: ''
            example: 2467.065868141
        -
          in: header
          name: Content-Type
          description: ''
          example: application/xml
          schema:
            type: string
        -
          in: header
          name: Accept
          description: ''
          example: application/json
          schema:
            type: string
      responses: {  }
      tags:
        - 'Image management for Non-NAV clients'
  '/image/{id}':
    delete:
      summary: 'Soft delete an image.'
      description: 'This endpoint allows you to soft delete an image in the AM system.'
      parameters:
        -
          in: query
          name: api_token
          description: 'Authentication key.'
          example: '{YOUR_AUTH_KEY}'
          required: true
          schema:
            type: string
            description: 'Authentication key.'
            example: '{YOUR_AUTH_KEY}'
        -
          in: header
          name: Content-Type
          description: ''
          example: application/xml
          schema:
            type: string
        -
          in: header
          name: Accept
          description: ''
          example: application/json
          schema:
            type: string
      responses: {  }
      tags:
        - 'Image management for Non-NAV clients'
    post:
      summary: 'Update an image.'
      description: 'This endpoint allows you to update an image in the AM system.'
      parameters:
        -
          in: query
          name: api_token
          description: 'Authentication key.'
          example: '{YOUR_AUTH_KEY}'
          required: true
          schema:
            type: string
            description: 'Authentication key.'
            example: '{YOUR_AUTH_KEY}'
        -
          in: header
          name: Content-Type
          description: ''
          example: multipart/form-data
          schema:
            type: string
        -
          in: header
          name: Accept
          description: ''
          example: application/json
          schema:
            type: string
      responses: {  }
      tags:
        - 'Image management for Non-NAV clients'
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                sort_no:
                  type: number
                  description: ''
                  example: 15.411232
                image:
                  type: string
                  format: binary
                  description: 'Must be an image. Must not be greater than 50000000 kilobytes.'
              required:
                - sort_no
    parameters:
      -
        in: path
        name: id
        description: ''
        example: adipisci
        required: true
        schema:
          type: string
  /media:
    post:
      summary: 'Post an image.'
      description: "This endpoint allows you to add an image to the AM system linked to a lot.\n\n<aside class=\"notice\">The relatedSystemId has to be an existing lot in the db</aside>"
      parameters:
        -
          in: query
          name: api_token
          description: 'Authentication key.'
          example: '{YOUR_AUTH_KEY}'
          required: true
          schema:
            type: string
            description: 'Authentication key.'
            example: '{YOUR_AUTH_KEY}'
        -
          in: query
          name: systemId
          description: ''
          example: voluptatem
          required: true
          schema:
            type: string
            description: ''
            example: voluptatem
        -
          in: query
          name: tableNo
          description: ''
          example: 13581241.31
          required: true
          schema:
            type: number
            description: ''
            example: 13581241.31
        -
          in: query
          name: relatedSystemId
          description: 'It has to be an existing lot in the db'
          example: velit
          required: true
          schema:
            type: string
            description: 'It has to be an existing lot in the db'
            example: velit
        -
          in: query
          name: entryNo
          description: ''
          example: 24.531666186
          required: true
          schema:
            type: number
            description: ''
            example: 24.531666186
        -
          in: query
          name: storageType
          description: ''
          example: perferendis
          required: true
          schema:
            type: string
            description: ''
            example: perferendis
        -
          in: query
          name: sortNo
          description: ''
          example: 2404.31026
          required: true
          schema:
            type: number
            description: ''
            example: 2404.31026
        -
          in: query
          name: mediaType
          description: ''
          example: vel
          required: true
          schema:
            type: string
            description: ''
            example: vel
        -
          in: query
          name: publicMediaPath
          description: 'An active url'
          example: vero
          required: true
          schema:
            type: string
            description: 'An active url'
            example: vero
        -
          in: query
          name: code
          description: ''
          example: beatae
          required: true
          schema:
            type: string
            description: ''
            example: beatae
        -
          in: query
          name: filename
          description: ''
          example: animi
          required: true
          schema:
            type: string
            description: ''
            example: animi
        -
          in: header
          name: Content-Type
          description: ''
          example: application/xml
          schema:
            type: string
        -
          in: header
          name: Accept
          description: ''
          example: application/json
          schema:
            type: string
      responses: {  }
      tags:
        - 'Media management from NAV'
  /media/sort:
    post:
      summary: 'Update sort order.'
      description: "This endpoint allows to bulk update the sort order of images in the AM system.\n\n<aside class=\"notice\">The SystemId has to be an existing entry in the db</aside>"
      parameters:
        -
          in: query
          name: api_token
          description: 'Authentication key.'
          example: '{YOUR_AUTH_KEY}'
          required: true
          schema:
            type: string
            description: 'Authentication key.'
            example: '{YOUR_AUTH_KEY}'
        -
          in: query
          name: systemId
          description: ''
          example: dolor
          required: true
          schema:
            type: string
            description: ''
            example: dolor
        -
          in: query
          name: sortNo
          description: ''
          example: 21759.2
          required: true
          schema:
            type: number
            description: ''
            example: 21759.2
        -
          in: header
          name: Content-Type
          description: ''
          example: application/xml
          schema:
            type: string
        -
          in: header
          name: Accept
          description: ''
          example: application/json
          schema:
            type: string
      responses: {  }
      tags:
        - 'Media management from NAV'
  '/media/{id}':
    put:
      summary: 'Update an image.'
      description: 'This endpoint allows you to update an image in the AM system.'
      parameters:
        -
          in: query
          name: api_token
          description: 'Authentication key.'
          example: '{YOUR_AUTH_KEY}'
          required: true
          schema:
            type: string
            description: 'Authentication key.'
            example: '{YOUR_AUTH_KEY}'
        -
          in: header
          name: Content-Type
          description: ''
          example: application/xml
          schema:
            type: string
        -
          in: header
          name: Accept
          description: ''
          example: application/json
          schema:
            type: string
      responses: {  }
      tags:
        - 'Media management from NAV'
    delete:
      summary: 'Soft delete an image.'
      description: 'This endpoint allows you to soft delete an image in the AM system.'
      parameters:
        -
          in: query
          name: api_token
          description: 'Authentication key.'
          example: '{YOUR_AUTH_KEY}'
          required: true
          schema:
            type: string
            description: 'Authentication key.'
            example: '{YOUR_AUTH_KEY}'
        -
          in: header
          name: Content-Type
          description: ''
          example: application/xml
          schema:
            type: string
        -
          in: header
          name: Accept
          description: ''
          example: application/json
          schema:
            type: string
      responses: {  }
      tags:
        - 'Media management from NAV'
    parameters:
      -
        in: path
        name: id
        description: ''
        example: est
        required: true
        schema:
          type: string
  /user:
    post:
      summary: 'Post a user record'
      description: 'This endpoint allows you to create a new AM user record or update an existing one'
      parameters:
        -
          in: query
          name: api_token
          description: 'Authentication key.'
          example: '{YOUR_AUTH_KEY}'
          required: true
          schema:
            type: string
            description: 'Authentication key.'
            example: '{YOUR_AUTH_KEY}'
        -
          in: header
          name: Content-Type
          description: ''
          example: application/json
          schema:
            type: string
        -
          in: header
          name: Accept
          description: ''
          example: application/json
          schema:
            type: string
      responses: {  }
      tags:
        - 'User management'
    put:
      summary: ''
      description: ''
      parameters:
        -
          in: query
          name: api_token
          description: 'Authentication key.'
          example: '{YOUR_AUTH_KEY}'
          required: true
          schema:
            type: string
            description: 'Authentication key.'
            example: '{YOUR_AUTH_KEY}'
        -
          in: header
          name: Content-Type
          description: ''
          example: application/xml
          schema:
            type: string
        -
          in: header
          name: Accept
          description: ''
          example: application/json
          schema:
            type: string
      responses: {  }
      tags:
        - 'User management'
      requestBody:
        required: true
        content:
          application/xml:
            schema:
              type: object
              properties:
                websiteID:
                  type: number
                  description: ''
                  example: 408435.983
                customerNo:
                  type: string
                  description: ''
                  example: consequuntur
                vendorNo:
                  type: string
                  description: ''
                  example: possimus
                firstName:
                  type: string
                  description: ''
                  example: ex
                middleName:
                  type: string
                  description: ''
                  example: aut
                surname:
                  type: string
                  description: ''
                  example: eos
                companyName:
                  type: string
                  description: ''
                  example: est
                email:
                  type: string
                  description: ''
                  example: optio
                address:
                  type: string
                  description: ''
                  example: corrupti
                address2:
                  type: string
                  description: ''
                  example: quaerat
                city:
                  type: string
                  description: ''
                  example: qui
                county:
                  type: string
                  description: ''
                  example: debitis
                postCode:
                  type: string
                  description: ''
                  example: delectus
                country:
                  type: string
                  description: ''
                  example: et
                phoneNo:
                  type: string
                  description: ''
                  example: aperiam
                mobileNo:
                  type: string
                  description: ''
                  example: aut
                vatNo:
                  type: string
                  description: ''
                  example: provident
                accountType:
                  type: string
                  description: ''
                  example: et
                blocked:
                  type: boolean
                  description: ''
                  example: true
              required:
                - websiteID
                - email
    get:
      summary: 'Get a user record'
      description: 'This endpoint allows you to get AM user record details via the email address'
      parameters:
        -
          in: query
          name: api_token
          description: 'Authentication key.'
          example: '{YOUR_AUTH_KEY}'
          required: true
          schema:
            type: string
            description: 'Authentication key.'
            example: '{YOUR_AUTH_KEY}'
        -
          in: header
          name: Content-Type
          description: ''
          example: application/json
          schema:
            type: string
        -
          in: header
          name: Accept
          description: ''
          example: application/json
          schema:
            type: string
      responses:
        500:
          description: ''
          content:
            application/json:
              schema:
                type: object
                example:
                  message: 'Server Error'
                properties:
                  message:
                    type: string
                    example: 'Server Error'
      tags:
        - 'User management'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                email:
                  type: string
                  description: ''
                  example: dignissimos
              required:
                - email
  '/user/{id}':
    delete:
      summary: Undefined
      description: ''
      parameters:
        -
          in: query
          name: api_token
          description: 'Authentication key.'
          example: '{YOUR_AUTH_KEY}'
          required: true
          schema:
            type: string
            description: 'Authentication key.'
            example: '{YOUR_AUTH_KEY}'
        -
          in: header
          name: Content-Type
          description: ''
          example: application/xml
          schema:
            type: string
        -
          in: header
          name: Accept
          description: ''
          example: application/json
          schema:
            type: string
      responses: {  }
      tags:
        - 'User management'
    parameters:
      -
        in: path
        name: id
        description: ''
        example: maxime
        required: true
        schema:
          type: string
tags:
  -
    name: Approvals
    description: "\nAPIs for post an registration and credit limit approval"
  -
    name: 'Catalogue layout management'
    description: "\nAPIs for managing catalogue layouts"
  -
    name: 'Document management'
    description: "\nAPIs for managing documents"
  -
    name: 'Image management for Non-NAV clients'
    description: "\nAPIs for managing images"
  -
    name: 'Media management from NAV'
    description: "\nAPIs for managing media from NAV"
  -
    name: 'User management'
    description: "\nAPIs for managing images"
components:
  securitySchemes:
    default:
      type: apiKey
      name: api_token
      in: query
      description: ''
security:
  -
    default: []
