mirror of
				https://github.com/advplyr/audiobookshelf.git
				synced 2025-11-03 10:57:03 -05:00 
			
		
		
		
	* Initial notification schema * Add: notification event and settings schema * Add: NotificationController * Update bundled spec * Fix: `operationId` typos * Fix: library response to be arroy of objects * Fix: notification ID is not uuid * Add: `nullable` notification creation parameters * Nullable libraryId schema * Remove: `id` from Notification requestBody * Fix: `allOf` for `libraryItemSequence` * Fix: required `id` in wrong body * Fix: libraryItem typos * Update: bundled spec
		
			
				
	
	
		
			105 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			105 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
components:
 | 
						|
  schemas:
 | 
						|
    oldLibraryId:
 | 
						|
      type: string
 | 
						|
      description: The ID of the libraries created on server version 2.2.23 and before.
 | 
						|
      format: 'lib_[a-z0-9]{18}'
 | 
						|
      example: 'lib_o78uaoeuh78h6aoeif'
 | 
						|
    libraryId:
 | 
						|
      type: string
 | 
						|
      description: The ID of the library.
 | 
						|
      format: uuid
 | 
						|
      example: 'e4bb1afb-4a4f-4dd6-8be0-e615d233185b'
 | 
						|
    libraryIdNullable:
 | 
						|
      type: string
 | 
						|
      description: The ID of the library. Applies to all libraries if `null`.
 | 
						|
      format: uuid
 | 
						|
      nullable: true
 | 
						|
      example: 'e4bb1afb-4a4f-4dd6-8be0-e615d233185b'
 | 
						|
    libraryName:
 | 
						|
      description: The name of the library.
 | 
						|
      type: string
 | 
						|
      example: My Audiobooks
 | 
						|
    librarySettings:
 | 
						|
      description: The settings for the library.
 | 
						|
      type: object
 | 
						|
      properties:
 | 
						|
        coverAspectRatio:
 | 
						|
          description: Whether the library should use square book covers. Must be 0 (for false) or 1 (for true).
 | 
						|
          type: integer
 | 
						|
          example: 1
 | 
						|
        disableWatcher:
 | 
						|
          description: Whether to disable the folder watcher for the library.
 | 
						|
          type: boolean
 | 
						|
          example: false
 | 
						|
        skipMatchingMediaWithAsin:
 | 
						|
          description: Whether to skip matching books that already have an ASIN.
 | 
						|
          type: boolean
 | 
						|
          example: false
 | 
						|
        skipMatchingMediaWithIsbn:
 | 
						|
          description: Whether to skip matching books that already have an ISBN.
 | 
						|
          type: boolean
 | 
						|
          example: false
 | 
						|
        autoScanCronExpression:
 | 
						|
          description: The cron expression for when to automatically scan the library folders. If null, automatic scanning will be disabled.
 | 
						|
          type: string
 | 
						|
          nullable: true
 | 
						|
          example: '0 0 0 * * *'
 | 
						|
        audiobooksOnly:
 | 
						|
          description: Whether the library should ignore ebook files and only allow ebook files to be supplementary.
 | 
						|
          type: boolean
 | 
						|
          example: false
 | 
						|
        hideSingleBookSeries:
 | 
						|
          description: Whether to hide series with only one book.
 | 
						|
          type: boolean
 | 
						|
          example: false
 | 
						|
        onlyShowLaterBooksInContinueSeries:
 | 
						|
          description: Whether to only show books in a series after the highest series sequence.
 | 
						|
          type: boolean
 | 
						|
          example: false
 | 
						|
        metadataPrecedence:
 | 
						|
          description: The precedence of metadata sources. See Metadata Providers for a list of possible providers.
 | 
						|
          type: array
 | 
						|
          items:
 | 
						|
            type: string
 | 
						|
          example: ['folderStructure', 'audioMetatags', 'nfoFile', 'txtFiles', 'opfFile', 'absMetadata']
 | 
						|
        podcastSearchRegion:
 | 
						|
          description: The region to use when searching for podcasts.
 | 
						|
          type: string
 | 
						|
          example: 'us'
 | 
						|
    library:
 | 
						|
      description: A library object which includes either books or podcasts.
 | 
						|
      type: object
 | 
						|
      properties:
 | 
						|
        id:
 | 
						|
          $ref: '#/components/schemas/libraryId'
 | 
						|
        name:
 | 
						|
          $ref: '#/components/schemas/libraryName'
 | 
						|
        folders:
 | 
						|
          description: The folders that belong to the library.
 | 
						|
          type: array
 | 
						|
          items:
 | 
						|
            $ref: './Folder.yaml#/components/schemas/folder'
 | 
						|
        displayOrder:
 | 
						|
          description: Display position of the library in the list of libraries. Must be >= 1.
 | 
						|
          type: integer
 | 
						|
          example: 1
 | 
						|
        icon:
 | 
						|
          description: The selected icon for the library. See Library Icons for a list of possible icons.
 | 
						|
          type: string
 | 
						|
          example: 'audiobookshelf'
 | 
						|
        mediaType:
 | 
						|
          description: The type of media that the library contains. Will be `book` or `podcast`. (Read Only)
 | 
						|
          type: string
 | 
						|
          example: 'book'
 | 
						|
        provider:
 | 
						|
          description: Preferred metadata provider for the library. See Metadata Providers for a list of possible providers.
 | 
						|
          type: string
 | 
						|
          example: 'audible'
 | 
						|
        settings:
 | 
						|
          $ref: '#/components/schemas/librarySettings'
 | 
						|
        createdAt:
 | 
						|
          $ref: '../schemas.yaml#/components/schemas/createdAt'
 | 
						|
        lastUpdate:
 | 
						|
          $ref: '../schemas.yaml#/components/schemas/updatedAt'
 |