info:
  description: No description
  license:
    name: MIT
  title: NonameApp
  version: 0.0.0
openapi: 3.0.0
paths:
  /consume/ping:
    post:
      description: "\n        Testovací metoda\n        "
      requestBody:
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  consume/ping:
                    type: object
                  status:
                    example: 200
                    type: number
                  status_message:
                    example: OK
                    type: string
                type: object
          description: OK
      summary: Testovací metoda
  /consume/stream_consume:
    post:
      description: "\n        API method for creating a stream link for audio files.\n\
        \        Actualy (2.12.2022) the expiration is configured to one hour.\n \
        \       "
      requestBody:
        content:
          application/json:
            schema:
              properties:
                album_id:
                  description: Album Id
                  type: integer
                provider:
                  description: Provider - means croslovo, crohudba, etc.
                  type: string
                token:
                  description: 'Token JWT https://jwt.io, HS512.<br>You will receive
                    secret from us.<br>Payload must contain:<br><i class="ml-4"></i>method:
                    method name with prefix<br><i class="ml-4"></i>exp: unixtimestamp
                    in seconds (integer)<br><i class="ml-4"></i>email: user email<br><i
                    class="ml-4"></i>token: permanent communication token for user'
                  type: string
                track_id:
                  description: Track Id - in specific case, when album has no tracks,
                    but only one root item, than track_id should be filled with album_id.
                  type: integer
              required:
              - token
              - provider
              - album_id
              - track_id
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  consume/stream_consume:
                    properties:
                      target:
                        description: Link for the stream
                        type: string
                    required:
                    - target
                    type: object
                  status:
                    example: 200
                    type: number
                  status_message:
                    example: OK
                    type: string
                type: object
          description: OK
        '400':
          content:
            application/json:
              examples:
                status_0:
                  summary: WrongArgument
                  value:
                    status: 400
                    status_message: null
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 400
                      type: number
                    status_message:
                      description: Error description
                      example: null
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
        '403':
          content:
            application/json:
              examples:
                status_0:
                  summary: "Passed user email and permanent communication token combination\
                    \ is\n    invalid. You should request new user pairing for your\
                    \ application."
                  value:
                    status: 401
                    status_message: "Passed user email and permanent communication\
                      \ token combination is\n    invalid. You should request new\
                      \ user pairing for your application."
                status_1:
                  summary: Not Authorized
                  value:
                    status: 403
                    status_message: Not Authorized
                status_2:
                  summary: Content not bought
                  value:
                    status: 413
                    status_message: Content not bought
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 401
                      type: number
                    status_message:
                      description: Error description
                      example: "Passed user email and permanent communication token\
                        \ combination is\n    invalid. You should request new user\
                        \ pairing for your application."
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
                - properties:
                    status:
                      description: Internal number code
                      example: 403
                      type: number
                    status_message:
                      description: Error description
                      example: Not Authorized
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
                - properties:
                    status:
                      description: Internal number code
                      example: 413
                      type: number
                    status_message:
                      description: Error description
                      example: Content not bought
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
        '404':
          content:
            application/json:
              examples:
                status_0:
                  summary: Not found
                  value:
                    status: 404
                    status_message: Not found
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 404
                      type: number
                    status_message:
                      description: Error description
                      example: Not found
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
        '500':
          content:
            application/json:
              examples:
                status_0:
                  summary: Generic Internal Server Error
                  value:
                    status: 500
                    status_message: Generic Internal Server Error
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 500
                      type: number
                    status_message:
                      description: Error description
                      example: Generic Internal Server Error
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
      summary: API method for creating a stream link for audio files.
  /content/category_tree_list:
    post:
      description: "Returns category tree, as used in menu on the website.\n     \
        \   This method has no regard for the passed user.\n        "
      requestBody:
        content:
          application/json:
            schema:
              properties:
                token:
                  description: 'Token JWT https://jwt.io, HS512.<br>You will receive
                    secret from us.<br>Payload must contain:<br><i class="ml-4"></i>method:
                    method name with prefix<br><i class="ml-4"></i>exp: unixtimestamp
                    in seconds (integer)<br>Payload can contain:<br><i class="ml-4"></i>email:
                    user email<br><i class="ml-4"></i>token: permanent communication
                    token for user'
                  type: string
              required:
              - token
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  content/category_tree_list:
                    description: List of root categories. Each item is typically for
                      one of providers. Each item have 'childs' attribute, which,
                      have the same description as the parent. The structure is recursive
                      and creates tree
                    items:
                      properties:
                        attributes:
                          description: Some extended category setting data
                          properties:
                            ba_hidden:
                              description: if true than this category is hidden for
                                external partners (eg. Audiolibrix)
                              type: boolean
                            filters:
                              description: List of available filters on the web
                              items:
                                type: string
                              type: array
                            in_menu:
                              description: If false this category is not listed iin
                                menu on website
                              type: boolean
                            position:
                              description: used to sort while creating menu
                              type: integer
                            push_to_root:
                              description: If true than this category is on the first
                                menu level
                              type: boolean
                            sorters:
                              description: List of available sorters on the web
                              items:
                                type: string
                              type: array
                          type: object
                        category_id:
                          description: Categroy id
                          type: integer
                        childs:
                          description: Recursive structure containing another tree
                            level
                          items: {}
                          type: array
                        count:
                          description: Number of items in category. The count is cached
                            for some time, so it must not be 100% accurate.
                          type: integer
                        depth:
                          type: object
                        name:
                          description: Categroy name
                          type: string
                        provider:
                          description: Provider - means croslovo, crohudba, etc.
                          type: string
                        provider_id:
                          description: Each provider can have its numeric id. This
                            value is usually unused.
                          type: integer
                      required:
                      - provider
                      - category_id
                      - name
                      - depth
                      - provider_id
                      - count
                      - childs
                      type: object
                    type: array
                  status:
                    example: 200
                    type: number
                  status_message:
                    example: OK
                    type: string
                type: object
          description: OK
        '400':
          content:
            application/json:
              examples:
                status_0:
                  summary: Wrong argument
                  value:
                    status: 400
                    status_message: Wrong argument
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 400
                      type: number
                    status_message:
                      description: Error description
                      example: Wrong argument
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
        '403':
          content:
            application/json:
              examples:
                status_0:
                  summary: "Passed user email and permanent communication token combination\
                    \ is\n    invalid. You should request new user pairing for your\
                    \ application."
                  value:
                    status: 401
                    status_message: "Passed user email and permanent communication\
                      \ token combination is\n    invalid. You should request new\
                      \ user pairing for your application."
                status_1:
                  summary: Not Authorized
                  value:
                    status: 403
                    status_message: Not Authorized
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 401
                      type: number
                    status_message:
                      description: Error description
                      example: "Passed user email and permanent communication token\
                        \ combination is\n    invalid. You should request new user\
                        \ pairing for your application."
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
                - properties:
                    status:
                      description: Internal number code
                      example: 403
                      type: number
                    status_message:
                      description: Error description
                      example: Not Authorized
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
        '500':
          content:
            application/json:
              examples:
                status_0:
                  summary: Generic Internal Server Error
                  value:
                    status: 500
                    status_message: Generic Internal Server Error
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 500
                      type: number
                    status_message:
                      description: Error description
                      example: Generic Internal Server Error
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
      summary: Returns category tree, as used in menu on the website.
  /content/item_detail:
    post:
      description: "Returns detail of one item.\n        If the user is given, the\
        \ response contains information about the         ownership of the item if\
        \ the item has a digital type. If the         user has set any discounts on\
        \ his account, they are applied."
      requestBody:
        content:
          application/json:
            schema:
              properties:
                item_id:
                  description: Item id. It's unique in combination with provider.
                  type: integer
                provider:
                  description: Provider - means croslovo, crohudba, etc.
                  type: string
                token:
                  description: 'Token JWT https://jwt.io, HS512.<br>You will receive
                    secret from us.<br>Payload must contain:<br><i class="ml-4"></i>method:
                    method name with prefix<br><i class="ml-4"></i>exp: unixtimestamp
                    in seconds (integer)<br>Payload can contain:<br><i class="ml-4"></i>email:
                    user email<br><i class="ml-4"></i>token: permanent communication
                    token for user'
                  type: string
              required:
              - token
              - provider
              - item_id
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  content/item_detail:
                    properties:
                      authors:
                        description: List of all people who attended in some role
                          on this item. Key is role ID. Almost all roles are clear,
                          but role 256 is  specific. Its "CRo priority" - Its sortable
                          list of people which we want to show to users. Each author
                          from this role can be found in some other role.
                        properties: {}
                        type: object
                      available:
                        description: Item is generally available for buy. Fox example
                          false if it's sold out, licence for this content is not
                          availabel anymore.
                        type: boolean
                      can_buy:
                        description: Item can be bought by user used in the call.
                          If no user is used it's value corresponds with 'available'
                          attribute.
                        type: boolean
                      categories:
                        description: List of categories in which the item is included.
                          Usually not empty, but in some spacial cases of hidden items
                          this attribute can be omited.
                        items:
                          description: description of one category
                          properties:
                            attributes:
                              description: Some extended category setting data
                              properties:
                                ba_hidden:
                                  description: if true than this category is hidden
                                    for external partners (eg. Audiolibrix)
                                  type: boolean
                                filters:
                                  description: List of available filters on the web
                                  items:
                                    type: string
                                  type: array
                                in_menu:
                                  description: If false this category is not listed
                                    iin menu on website
                                  type: boolean
                                position:
                                  description: used to sort while creating menu
                                  type: integer
                                push_to_root:
                                  description: If true than this category is on the
                                    first menu level
                                  type: boolean
                                sorters:
                                  description: List of available sorters on the web
                                  items:
                                    type: string
                                  type: array
                              type: object
                            depth:
                              description: Category depth in menu 0 - top level.
                              type: integer
                            id:
                              description: Category id
                              type: integer
                            name:
                              description: Category name
                              type: string
                            parent_category:
                              description: Id of praent category. null mens top level
                              type: integer
                          required:
                          - id
                          - name
                          - depth
                          type: object
                        type: array
                      core_created_date:
                        description: Time of first apearance in databse of products,
                          means first import. Typically used to find news
                        type: string
                      description:
                        description: HTML description of item. The data is transferred
                          as it was delivered from an external system, therefore the
                          validity of the transferred HTML cannot be guaranteed.
                        type: string
                      digital:
                        description: This item can be bought for download (mp3/flac)
                        type: boolean
                      id:
                        description: Album id
                        type: integer
                      image:
                        description: Cover for this item. Usually there is only one
                          image. Other can be fallbacks, or if administrator set more
                          covers for one item, but this case is usually interpertted
                          as minstake. If we want have more images than only one shul
                          be cover, other ones should be set as gallery and ca be
                          found in 'gallery' attribute.
                        items:
                          description: link
                          type: string
                        type: array
                      length_seconds:
                        description: Length of audio in seconds this item including
                          subitems.
                        type: integer
                      maid_date:
                        description: Usually contains only date (time is set to 00:00:00).
                          Date stored there means date when the recording was maid.
                          For example release date can be 2000, if the cd was released
                          in 2000, but the recording is from theatre play from year
                          1968
                        type: string
                      physical:
                        description: This item can be bought as CD, DVD, CD-mp3, etc
                        type: boolean
                      presale:
                        description: Item is in presale state. If this attribute is
                          true, than response can contain 'presale_text' where additional
                          information is present.
                        type: boolean
                      presale_test:
                        description: If item is in presale state, than there can be
                          HTML text with some additional explanation. For example
                          delivery date. Contents of this attribute ca be filled in
                          administration by e-shop administrator
                        type: string
                      provider:
                        description: Provider - means croslovo, crohudba, etc.
                        type: string
                      release_date:
                        description: Usually contains only date (time is set to 00:00:00).
                          Date stored there means date when the recording was released.
                          Difference betweet release_date and maid_date is described
                          in maid_date attribure description.
                        type: string
                      title:
                        description: Name of album. Sometimes it contains name of
                          first author in role 256.
                        type: string
                      volumes:
                        description: List of parts. Each part should have number as
                          key. If there is no ordering in volume metadata than key
                          is set to 'None'.
                        properties: {}
                        type: object
                    required:
                    - id
                    - title
                    - provider
                    - core_created_date
                    - physical
                    - digital
                    - available
                    - can_buy
                    - presale
                    type: object
                  status:
                    example: 200
                    type: number
                  status_message:
                    example: OK
                    type: string
                type: object
          description: OK
        '400':
          content:
            application/json:
              examples:
                status_0:
                  summary: Wrong argument
                  value:
                    status: 400
                    status_message: Wrong argument
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 400
                      type: number
                    status_message:
                      description: Error description
                      example: Wrong argument
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
        '403':
          content:
            application/json:
              examples:
                status_0:
                  summary: "Passed user email and permanent communication token combination\
                    \ is\n    invalid. You should request new user pairing for your\
                    \ application."
                  value:
                    status: 401
                    status_message: "Passed user email and permanent communication\
                      \ token combination is\n    invalid. You should request new\
                      \ user pairing for your application."
                status_1:
                  summary: Not Authorized
                  value:
                    status: 403
                    status_message: Not Authorized
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 401
                      type: number
                    status_message:
                      description: Error description
                      example: "Passed user email and permanent communication token\
                        \ combination is\n    invalid. You should request new user\
                        \ pairing for your application."
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
                - properties:
                    status:
                      description: Internal number code
                      example: 403
                      type: number
                    status_message:
                      description: Error description
                      example: Not Authorized
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
        '404':
          content:
            application/json:
              examples:
                status_0:
                  summary: Not found
                  value:
                    status: 404
                    status_message: Not found
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 404
                      type: number
                    status_message:
                      description: Error description
                      example: Not found
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
        '500':
          content:
            application/json:
              examples:
                status_0:
                  summary: Generic Internal Server Error
                  value:
                    status: 500
                    status_message: Generic Internal Server Error
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 500
                      type: number
                    status_message:
                      description: Error description
                      example: Generic Internal Server Error
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
      summary: Returns detail of one item.
  /content/item_list:
    post:
      description: "Returns list of items from one provider\n        If the user is\
        \ given, the response contains information about the         ownership of\
        \ the item if the item has a digital type. If the user         has set any\
        \ discounts on his account, they are applied.\n        Method return <u><i>x-total-count</i></u>\
        \ http header with         information about total count of items in library\
        \ for user.         This can be used for optimizing paging requests."
      requestBody:
        content:
          application/json:
            schema:
              properties:
                count:
                  default: 5
                  description: Max resutls count per page
                  maximum: 100
                  minimum: 0
                  type: integer
                filters:
                  properties:
                    category_id:
                      description: Category id. 0 is the same as no filter. Negative
                        numbers are virtual categories which are dynamic. For example
                        news, in action, etc.
                      type: integer
                    last_changed:
                      description: Date of last change in system. Filter items with
                        last_change >= given value
                      type: string
                  type: object
                offset:
                  description: Offset in items count. Not the page number.
                  minimum: 0
                  type: integer
                order:
                  description: Ordering of content
                  items:
                    properties:
                      ascending:
                        type: boolean
                      column:
                        enum:
                        - id
                        - created
                        - type_price
                        - release_date
                        - distributor_sorts_popularity
                        type: string
                      nulls:
                        default: max
                        description: How to order not items with not filled value.
                          Max means treat as highest value (∞). Min means treat as
                          lowest value (-∞). First means always on top independently
                          on order direction. Last means always on bottom independently
                          on order direction.
                        enum:
                        - min
                        - max
                        - first
                        - last
                        nullable: true
                        type: string
                    required:
                    - column
                    type: object
                  type: array
                provider:
                  description: Provider - means croslovo, crohudba, etc.
                  type: string
                token:
                  description: 'Token JWT https://jwt.io, HS512.<br>You will receive
                    secret from us.<br>Payload must contain:<br><i class="ml-4"></i>method:
                    method name with prefix<br><i class="ml-4"></i>exp: unixtimestamp
                    in seconds (integer)<br>Payload can contain:<br><i class="ml-4"></i>email:
                    user email<br><i class="ml-4"></i>token: permanent communication
                    token for user'
                  type: string
              required:
              - token
              - provider
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  content/item_list:
                    items:
                      properties:
                        authors:
                          description: List of all people who attended in some role
                            on this item. Key is role ID. Almost all roles are clear,
                            but role 256 is  specific. Its "CRo priority" - Its sortable
                            list of people which we want to show to users. Each author
                            from this role can be found in some other role.
                          properties: {}
                          type: object
                        available:
                          description: Item is generally available for buy. Fox example
                            false if it's sold out, licence for this content is not
                            availabel anymore.
                          type: boolean
                        can_buy:
                          description: Item can be bought by user used in the call.
                            If no user is used it's value corresponds with 'available'
                            attribute.
                          type: boolean
                        categories:
                          description: List of categories in which the item is included.
                            Usually not empty, but in some spacial cases of hidden
                            items this attribute can be omited.
                          items:
                            description: description of one category
                            properties:
                              attributes:
                                description: Some extended category setting data
                                properties:
                                  ba_hidden:
                                    description: if true than this category is hidden
                                      for external partners (eg. Audiolibrix)
                                    type: boolean
                                  filters:
                                    description: List of available filters on the
                                      web
                                    items:
                                      type: string
                                    type: array
                                  in_menu:
                                    description: If false this category is not listed
                                      iin menu on website
                                    type: boolean
                                  position:
                                    description: used to sort while creating menu
                                    type: integer
                                  push_to_root:
                                    description: If true than this category is on
                                      the first menu level
                                    type: boolean
                                  sorters:
                                    description: List of available sorters on the
                                      web
                                    items:
                                      type: string
                                    type: array
                                type: object
                              depth:
                                description: Category depth in menu 0 - top level.
                                type: integer
                              id:
                                description: Category id
                                type: integer
                              name:
                                description: Category name
                                type: string
                              parent_category:
                                description: Id of praent category. null mens top
                                  level
                                type: integer
                            required:
                            - id
                            - name
                            - depth
                            type: object
                          type: array
                        core_created_date:
                          description: Time of first apearance in databse of products,
                            means first import. Typically used to find news
                          type: string
                        description:
                          description: HTML description of item. The data is transferred
                            as it was delivered from an external system, therefore
                            the validity of the transferred HTML cannot be guaranteed.
                          type: string
                        digital:
                          description: This item can be bought for download (mp3/flac)
                          type: boolean
                        id:
                          description: Album id
                          type: integer
                        image:
                          description: Cover for this item. Usually there is only
                            one image. Other can be fallbacks, or if administrator
                            set more covers for one item, but this case is usually
                            interpertted as minstake. If we want have more images
                            than only one shul be cover, other ones should be set
                            as gallery and ca be found in 'gallery' attribute.
                          items:
                            description: link
                            type: string
                          type: array
                        length_seconds:
                          description: Length of audio in seconds this item including
                            subitems.
                          type: integer
                        maid_date:
                          description: Usually contains only date (time is set to
                            00:00:00). Date stored there means date when the recording
                            was maid. For example release date can be 2000, if the
                            cd was released in 2000, but the recording is from theatre
                            play from year 1968
                          type: string
                        physical:
                          description: This item can be bought as CD, DVD, CD-mp3,
                            etc
                          type: boolean
                        presale:
                          description: Item is in presale state. If this attribute
                            is true, than response can contain 'presale_text' where
                            additional information is present.
                          type: boolean
                        presale_test:
                          description: If item is in presale state, than there can
                            be HTML text with some additional explanation. For example
                            delivery date. Contents of this attribute ca be filled
                            in administration by e-shop administrator
                          type: string
                        provider:
                          description: Provider - means croslovo, crohudba, etc.
                          type: string
                        release_date:
                          description: Usually contains only date (time is set to
                            00:00:00). Date stored there means date when the recording
                            was released. Difference betweet release_date and maid_date
                            is described in maid_date attribure description.
                          type: string
                        title:
                          description: Name of album. Sometimes it contains name of
                            first author in role 256.
                          type: string
                      required:
                      - id
                      - title
                      - provider
                      - core_created_date
                      - physical
                      - digital
                      - available
                      - can_buy
                      - presale
                      type: object
                    type: array
                  status:
                    example: 200
                    type: number
                  status_message:
                    example: OK
                    type: string
                type: object
          description: OK
        '400':
          content:
            application/json:
              examples:
                status_0:
                  summary: Wrong argument
                  value:
                    status: 400
                    status_message: Wrong argument
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 400
                      type: number
                    status_message:
                      description: Error description
                      example: Wrong argument
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
        '403':
          content:
            application/json:
              examples:
                status_0:
                  summary: "Passed user email and permanent communication token combination\
                    \ is\n    invalid. You should request new user pairing for your\
                    \ application."
                  value:
                    status: 401
                    status_message: "Passed user email and permanent communication\
                      \ token combination is\n    invalid. You should request new\
                      \ user pairing for your application."
                status_1:
                  summary: Not Authorized
                  value:
                    status: 403
                    status_message: Not Authorized
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 401
                      type: number
                    status_message:
                      description: Error description
                      example: "Passed user email and permanent communication token\
                        \ combination is\n    invalid. You should request new user\
                        \ pairing for your application."
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
                - properties:
                    status:
                      description: Internal number code
                      example: 403
                      type: number
                    status_message:
                      description: Error description
                      example: Not Authorized
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
        '404':
          content:
            application/json:
              examples:
                status_0:
                  summary: Not found
                  value:
                    status: 404
                    status_message: Not found
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 404
                      type: number
                    status_message:
                      description: Error description
                      example: Not found
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
        '500':
          content:
            application/json:
              examples:
                status_0:
                  summary: Generic Internal Server Error
                  value:
                    status: 500
                    status_message: Generic Internal Server Error
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 500
                      type: number
                    status_message:
                      description: Error description
                      example: Generic Internal Server Error
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
      summary: Returns list of items from one provider
  /content/library:
    post:
      description: "Returns user library for specified content provider.\n       \
        \ Method return <u><i>x-total-count</i></u> http header with         information\
        \ about total count of items in library for user.         This can be used\
        \ for optimizing paging requests."
      requestBody:
        content:
          application/json:
            schema:
              properties:
                count:
                  default: 5
                  description: Max resutls count per page
                  maximum: 100
                  minimum: 0
                  type: integer
                offset:
                  description: Offset in items count. Not the page number.
                  minimum: 0
                  type: integer
                provider:
                  description: Provider - means croslovo, crohudba, etc.
                  type: string
                split_per_track_shopping:
                  description: If requested each track bought separately is returned
                    as one response item. Which track was bought is defined in library_part
                    response attribute.
                  type: boolean
                token:
                  description: 'Token JWT https://jwt.io, HS512.<br>You will receive
                    secret from us.<br>Payload must contain:<br><i class="ml-4"></i>method:
                    method name with prefix<br><i class="ml-4"></i>exp: unixtimestamp
                    in seconds (integer)<br><i class="ml-4"></i>email: user email<br><i
                    class="ml-4"></i>token: permanent communication token for user'
                  type: string
              required:
              - token
              - provider
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  content/library:
                    type: object
                  status:
                    example: 200
                    type: number
                  status_message:
                    example: OK
                    type: string
                type: object
          description: OK
        '400':
          content:
            application/json:
              examples:
                status_0:
                  summary: Wrong argument
                  value:
                    status: 400
                    status_message: Wrong argument
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 400
                      type: number
                    status_message:
                      description: Error description
                      example: Wrong argument
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
        '403':
          content:
            application/json:
              examples:
                status_0:
                  summary: "Passed user email and permanent communication token combination\
                    \ is\n    invalid. You should request new user pairing for your\
                    \ application."
                  value:
                    status: 401
                    status_message: "Passed user email and permanent communication\
                      \ token combination is\n    invalid. You should request new\
                      \ user pairing for your application."
                status_1:
                  summary: Not Authorized
                  value:
                    status: 403
                    status_message: Not Authorized
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 401
                      type: number
                    status_message:
                      description: Error description
                      example: "Passed user email and permanent communication token\
                        \ combination is\n    invalid. You should request new user\
                        \ pairing for your application."
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
                - properties:
                    status:
                      description: Internal number code
                      example: 403
                      type: number
                    status_message:
                      description: Error description
                      example: Not Authorized
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
        '500':
          content:
            application/json:
              examples:
                status_0:
                  summary: Generic Internal Server Error
                  value:
                    status: 500
                    status_message: Generic Internal Server Error
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 500
                      type: number
                    status_message:
                      description: Error description
                      example: Generic Internal Server Error
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
      summary: Returns user library for specified content provider.
  /content/ping:
    post:
      description: "\n        Testovací metoda\n        "
      requestBody:
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  content/ping:
                    type: object
                  status:
                    example: 200
                    type: number
                  status_message:
                    example: OK
                    type: string
                type: object
          description: OK
      summary: Testovací metoda
  /content/provider_list:
    post:
      description: "\n        returns all available content providers in radioteka\
        \ system\n        "
      requestBody:
        content:
          application/json:
            schema:
              properties:
                token:
                  description: 'Token JWT https://jwt.io, HS512.<br>You will receive
                    secret from us.<br>Payload must contain:<br><i class="ml-4"></i>method:
                    method name with prefix<br><i class="ml-4"></i>exp: unixtimestamp
                    in seconds (integer)<br>Payload can contain:<br><i class="ml-4"></i>email:
                    user email<br><i class="ml-4"></i>token: permanent communication
                    token for user'
                  type: string
              required:
              - token
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  content/provider_list:
                    description: providers
                    items:
                      properties:
                        id:
                          description: id used in most methods eg. item_list
                          type: string
                        name:
                          description: Human readable name
                          type: string
                      required:
                      - id
                      - name
                      type: object
                    type: array
                  status:
                    example: 200
                    type: number
                  status_message:
                    example: OK
                    type: string
                type: object
          description: OK
        '400':
          content:
            application/json:
              examples:
                status_0:
                  summary: Wrong argument
                  value:
                    status: 400
                    status_message: Wrong argument
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 400
                      type: number
                    status_message:
                      description: Error description
                      example: Wrong argument
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
        '403':
          content:
            application/json:
              examples:
                status_0:
                  summary: Not Authorized
                  value:
                    status: 403
                    status_message: Not Authorized
                status_1:
                  summary: "Passed user email and permanent communication token combination\
                    \ is\n    invalid. You should request new user pairing for your\
                    \ application."
                  value:
                    status: 401
                    status_message: "Passed user email and permanent communication\
                      \ token combination is\n    invalid. You should request new\
                      \ user pairing for your application."
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 403
                      type: number
                    status_message:
                      description: Error description
                      example: Not Authorized
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
                - properties:
                    status:
                      description: Internal number code
                      example: 401
                      type: number
                    status_message:
                      description: Error description
                      example: "Passed user email and permanent communication token\
                        \ combination is\n    invalid. You should request new user\
                        \ pairing for your application."
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
        '500':
          content:
            application/json:
              examples:
                status_0:
                  summary: Generic Internal Server Error
                  value:
                    status: 500
                    status_message: Generic Internal Server Error
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 500
                      type: number
                    status_message:
                      description: Error description
                      example: Generic Internal Server Error
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
      summary: returns all available content providers in radioteka system
  /content/top_selling_list:
    post:
      description: '[method description]'
      requestBody:
        content:
          application/json:
            schema:
              properties:
                count:
                  default: 10
                  description: Number of items we want. Default 10
                  maximum: 50
                  minimum: 1
                  type: integer
                providers:
                  description: List of providers we want. If not present or empty
                    than no filter is applied.
                  items:
                    description: Provider - means croslovo, crohudba, etc.
                    type: string
                  type: array
                token:
                  description: 'Token JWT https://jwt.io, HS512.<br>You will receive
                    secret from us.<br>Payload must contain:<br><i class="ml-4"></i>method:
                    method name with prefix<br><i class="ml-4"></i>exp: unixtimestamp
                    in seconds (integer)<br>Payload can contain:<br><i class="ml-4"></i>email:
                    user email<br><i class="ml-4"></i>token: permanent communication
                    token for user'
                  type: string
              required:
              - token
              - count
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  content/top_selling_list:
                    items:
                      properties:
                        authors:
                          description: List of all people who attended in some role
                            on this item. Key is role ID. Almost all roles are clear,
                            but role 256 is  specific. Its "CRo priority" - Its sortable
                            list of people which we want to show to users. Each author
                            from this role can be found in some other role.
                          properties: {}
                          type: object
                        available:
                          description: Item is generally available for buy. Fox example
                            false if it's sold out, licence for this content is not
                            availabel anymore.
                          type: boolean
                        can_buy:
                          description: Item can be bought by user used in the call.
                            If no user is used it's value corresponds with 'available'
                            attribute.
                          type: boolean
                        categories:
                          description: List of categories in which the item is included.
                            Usually not empty, but in some spacial cases of hidden
                            items this attribute can be omited.
                          items:
                            description: description of one category
                            properties:
                              attributes:
                                description: Some extended category setting data
                                properties:
                                  ba_hidden:
                                    description: if true than this category is hidden
                                      for external partners (eg. Audiolibrix)
                                    type: boolean
                                  filters:
                                    description: List of available filters on the
                                      web
                                    items:
                                      type: string
                                    type: array
                                  in_menu:
                                    description: If false this category is not listed
                                      iin menu on website
                                    type: boolean
                                  position:
                                    description: used to sort while creating menu
                                    type: integer
                                  push_to_root:
                                    description: If true than this category is on
                                      the first menu level
                                    type: boolean
                                  sorters:
                                    description: List of available sorters on the
                                      web
                                    items:
                                      type: string
                                    type: array
                                type: object
                              depth:
                                description: Category depth in menu 0 - top level.
                                type: integer
                              id:
                                description: Category id
                                type: integer
                              name:
                                description: Category name
                                type: string
                              parent_category:
                                description: Id of praent category. null mens top
                                  level
                                type: integer
                            required:
                            - id
                            - name
                            - depth
                            type: object
                          type: array
                        core_created_date:
                          description: Time of first apearance in databse of products,
                            means first import. Typically used to find news
                          type: string
                        description:
                          description: HTML description of item. The data is transferred
                            as it was delivered from an external system, therefore
                            the validity of the transferred HTML cannot be guaranteed.
                          type: string
                        digital:
                          description: This item can be bought for download (mp3/flac)
                          type: boolean
                        id:
                          description: Album id
                          type: integer
                        image:
                          description: Cover for this item. Usually there is only
                            one image. Other can be fallbacks, or if administrator
                            set more covers for one item, but this case is usually
                            interpertted as minstake. If we want have more images
                            than only one shul be cover, other ones should be set
                            as gallery and ca be found in 'gallery' attribute.
                          items:
                            description: link
                            type: string
                          type: array
                        length_seconds:
                          description: Length of audio in seconds this item including
                            subitems.
                          type: integer
                        maid_date:
                          description: Usually contains only date (time is set to
                            00:00:00). Date stored there means date when the recording
                            was maid. For example release date can be 2000, if the
                            cd was released in 2000, but the recording is from theatre
                            play from year 1968
                          type: string
                        physical:
                          description: This item can be bought as CD, DVD, CD-mp3,
                            etc
                          type: boolean
                        presale:
                          description: Item is in presale state. If this attribute
                            is true, than response can contain 'presale_text' where
                            additional information is present.
                          type: boolean
                        presale_test:
                          description: If item is in presale state, than there can
                            be HTML text with some additional explanation. For example
                            delivery date. Contents of this attribute ca be filled
                            in administration by e-shop administrator
                          type: string
                        provider:
                          description: Provider - means croslovo, crohudba, etc.
                          type: string
                        release_date:
                          description: Usually contains only date (time is set to
                            00:00:00). Date stored there means date when the recording
                            was released. Difference betweet release_date and maid_date
                            is described in maid_date attribure description.
                          type: string
                        title:
                          description: Name of album. Sometimes it contains name of
                            first author in role 256.
                          type: string
                      required:
                      - id
                      - title
                      - provider
                      - core_created_date
                      - physical
                      - digital
                      - available
                      - can_buy
                      - presale
                      type: object
                    type: array
                  status:
                    example: 200
                    type: number
                  status_message:
                    example: OK
                    type: string
                type: object
          description: OK
        '400':
          content:
            application/json:
              examples:
                status_0:
                  summary: Wrong argument
                  value:
                    status: 400
                    status_message: Wrong argument
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 400
                      type: number
                    status_message:
                      description: Error description
                      example: Wrong argument
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
        '403':
          content:
            application/json:
              examples:
                status_0:
                  summary: "Passed user email and permanent communication token combination\
                    \ is\n    invalid. You should request new user pairing for your\
                    \ application."
                  value:
                    status: 401
                    status_message: "Passed user email and permanent communication\
                      \ token combination is\n    invalid. You should request new\
                      \ user pairing for your application."
                status_1:
                  summary: Not Authorized
                  value:
                    status: 403
                    status_message: Not Authorized
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 401
                      type: number
                    status_message:
                      description: Error description
                      example: "Passed user email and permanent communication token\
                        \ combination is\n    invalid. You should request new user\
                        \ pairing for your application."
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
                - properties:
                    status:
                      description: Internal number code
                      example: 403
                      type: number
                    status_message:
                      description: Error description
                      example: Not Authorized
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
        '500':
          content:
            application/json:
              examples:
                status_0:
                  summary: Generic Internal Server Error
                  value:
                    status: 500
                    status_message: Generic Internal Server Error
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 500
                      type: number
                    status_message:
                      description: Error description
                      example: Generic Internal Server Error
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
      summary: '[method description]'
  /pairing/ping:
    post:
      description: "\n        Testovací metoda\n        "
      requestBody:
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  pairing/ping:
                    type: object
                  status:
                    example: 200
                    type: number
                  status_message:
                    example: OK
                    type: string
                type: object
          description: OK
      summary: Testovací metoda
  /pairing/temporary_token_to_permanent:
    post:
      description: "\n        Check temporary token and if success create and return\
        \ new permanent.\n        This method must not contain email and token in\
        \ JWT payload.\n        "
      requestBody:
        content:
          application/json:
            schema:
              properties:
                email:
                  description: User email
                  type: string
                temporary_token:
                  description: Temporary token
                  minLength: 1
                  type: string
                token:
                  description: 'Token JWT https://jwt.io, HS512.<br>You will receive
                    secret from us.<br>Payload must contain:<br><i class="ml-4"></i>method:
                    method name with prefix<br><i class="ml-4"></i>exp: unixtimestamp
                    in seconds (integer)'
                  type: string
              required:
              - token
              - email
              - temporary_token
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  pairing/temporary_token_to_permanent:
                    description: Permanent token
                    type: string
                  status:
                    example: 200
                    type: number
                  status_message:
                    example: OK
                    type: string
                type: object
          description: OK
        '400':
          content:
            application/json:
              examples:
                status_0:
                  summary: Wrong argument
                  value:
                    status: 400
                    status_message: Wrong argument
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 400
                      type: number
                    status_message:
                      description: Error description
                      example: Wrong argument
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
        '401':
          content:
            application/json:
              examples:
                status_0:
                  summary: Pairing error exception
                  value:
                    status: 402
                    status_message: Pairing error exception
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 402
                      type: number
                    status_message:
                      description: Error description
                      example: Pairing error exception
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
        '403':
          content:
            application/json:
              examples:
                status_0:
                  summary: Not Authorized
                  value:
                    status: 403
                    status_message: Not Authorized
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 403
                      type: number
                    status_message:
                      description: Error description
                      example: Not Authorized
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
        '500':
          content:
            application/json:
              examples:
                status_0:
                  summary: Generic Internal Server Error
                  value:
                    status: 500
                    status_message: Generic Internal Server Error
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 500
                      type: number
                    status_message:
                      description: Error description
                      example: Generic Internal Server Error
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
      summary: Check temporary token and if success create and return new permanent.
  /pairing/tokens_drop:
    post:
      description: "\n        Drop all tokens (temporary and permanent)\n        "
      requestBody:
        content:
          application/json:
            schema:
              properties:
                token:
                  description: 'Token JWT https://jwt.io, HS512.<br>You will receive
                    secret from us.<br>Payload must contain:<br><i class="ml-4"></i>method:
                    method name with prefix<br><i class="ml-4"></i>exp: unixtimestamp
                    in seconds (integer)<br><i class="ml-4"></i>email: user email<br><i
                    class="ml-4"></i>token: permanent communication token for user'
                  type: string
              required:
              - token
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  pairing/tokens_drop:
                    description: This method should always return 'true'
                    type: boolean
                  status:
                    example: 200
                    type: number
                  status_message:
                    example: OK
                    type: string
                type: object
          description: OK
        '400':
          content:
            application/json:
              examples:
                status_0:
                  summary: Wrong argument
                  value:
                    status: 400
                    status_message: Wrong argument
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 400
                      type: number
                    status_message:
                      description: Error description
                      example: Wrong argument
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
        '401':
          content:
            application/json:
              examples:
                status_0:
                  summary: Pairing error exception
                  value:
                    status: 402
                    status_message: Pairing error exception
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 402
                      type: number
                    status_message:
                      description: Error description
                      example: Pairing error exception
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
        '403':
          content:
            application/json:
              examples:
                status_0:
                  summary: "Passed user email and permanent communication token combination\
                    \ is\n    invalid. You should request new user pairing for your\
                    \ application."
                  value:
                    status: 401
                    status_message: "Passed user email and permanent communication\
                      \ token combination is\n    invalid. You should request new\
                      \ user pairing for your application."
                status_1:
                  summary: Not Authorized
                  value:
                    status: 403
                    status_message: Not Authorized
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 401
                      type: number
                    status_message:
                      description: Error description
                      example: "Passed user email and permanent communication token\
                        \ combination is\n    invalid. You should request new user\
                        \ pairing for your application."
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
                - properties:
                    status:
                      description: Internal number code
                      example: 403
                      type: number
                    status_message:
                      description: Error description
                      example: Not Authorized
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
        '500':
          content:
            application/json:
              examples:
                status_0:
                  summary: Generic Internal Server Error
                  value:
                    status: 500
                    status_message: Generic Internal Server Error
              schema:
                oneOf:
                - properties:
                    status:
                      description: Internal number code
                      example: 500
                      type: number
                    status_message:
                      description: Error description
                      example: Generic Internal Server Error
                      type: string
                  required:
                  - status
                  - status_message
                  type: object
          description: Error
      summary: Drop all tokens (temporary and permanent)
servers:
- description: Api url
  url: http://frontends11-cas:80
