mirror of
				https://github.com/advplyr/audiobookshelf.git
				synced 2025-10-27 11:18:14 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			232 lines
		
	
	
		
			7.9 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			232 lines
		
	
	
		
			7.9 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
components:
 | 
						|
  responses:
 | 
						|
    notification200:
 | 
						|
      description: Notification endpoint success.
 | 
						|
      content:
 | 
						|
        text/html:
 | 
						|
          schema:
 | 
						|
            type: string
 | 
						|
            example: OK
 | 
						|
    notification404:
 | 
						|
      description: An admin user is required or notification with the given ID not found.
 | 
						|
      content:
 | 
						|
        text/html:
 | 
						|
          schema:
 | 
						|
            type: string
 | 
						|
            example: Series not found.
 | 
						|
paths:
 | 
						|
  /api/notifications:
 | 
						|
    get:
 | 
						|
      operationId: getNotifications
 | 
						|
      summary: Get notification settings
 | 
						|
      description: Get all Apprise notification events and notification settings for server.
 | 
						|
      tags:
 | 
						|
        - Notification
 | 
						|
      responses:
 | 
						|
        '200':
 | 
						|
          description: Success
 | 
						|
          content:
 | 
						|
            application/json:
 | 
						|
              schema:
 | 
						|
                type: object
 | 
						|
                properties:
 | 
						|
                  data:
 | 
						|
                    type: object
 | 
						|
                    properties:
 | 
						|
                      events:
 | 
						|
                        type: array
 | 
						|
                        items:
 | 
						|
                          $ref: '../objects/Notification.yaml#/components/schemas/NotificationEvent'
 | 
						|
                  settings:
 | 
						|
                    $ref: '../objects/Notification.yaml#/components/schemas/NotificationSettings'
 | 
						|
        '404':
 | 
						|
          $ref: '#/components/responses/notification404'
 | 
						|
    patch:
 | 
						|
      operationId: configureNotificationSettings
 | 
						|
      summary: Update select notification settings
 | 
						|
      description: Update the URL, max failed attempts, and maximum notifications that can be queued for Apprise.
 | 
						|
      tags:
 | 
						|
        - Notification
 | 
						|
      requestBody:
 | 
						|
        content:
 | 
						|
          application/json:
 | 
						|
            schema:
 | 
						|
              type: object
 | 
						|
              properties:
 | 
						|
                appriseApiUrl:
 | 
						|
                  $ref: '../objects/Notification.yaml#/components/schemas/appriseApiUrl'
 | 
						|
                maxFailedAttempts:
 | 
						|
                  $ref: '../objects/Notification.yaml#/components/schemas/maxFailedAttempts'
 | 
						|
                maxNotificationQueue:
 | 
						|
                  $ref: '../objects/Notification.yaml#/components/schemas/maxNotificationQueue'
 | 
						|
      responses:
 | 
						|
        '200':
 | 
						|
          $ref: '#/components/responses/notification200'
 | 
						|
        '404':
 | 
						|
          $ref: '#/components/responses/notification404'
 | 
						|
    post:
 | 
						|
      operationId: createNotification
 | 
						|
      summary: Create notification settings
 | 
						|
      description: Create or update Notification settings.
 | 
						|
      tags:
 | 
						|
        - Notification
 | 
						|
      requestBody:
 | 
						|
        content:
 | 
						|
          application/json:
 | 
						|
            schema:
 | 
						|
              type: object
 | 
						|
              properties:
 | 
						|
                libraryId:
 | 
						|
                  $ref: '../objects/Library.yaml#/components/schemas/libraryIdNullable'
 | 
						|
                eventName:
 | 
						|
                  $ref: '../objects/Notification.yaml#/components/schemas/notificationEventName'
 | 
						|
                urls:
 | 
						|
                  $ref: '../objects/Notification.yaml#/components/schemas/urls'
 | 
						|
                titleTemplate:
 | 
						|
                  $ref: '../objects/Notification.yaml#/components/schemas/titleTemplate'
 | 
						|
                bodyTemplate:
 | 
						|
                  $ref: '../objects/Notification.yaml#/components/schemas/bodyTemplate'
 | 
						|
                enabled:
 | 
						|
                  $ref: '../objects/Notification.yaml#/components/schemas/enabled'
 | 
						|
                type:
 | 
						|
                  $ref: '../objects/Notification.yaml#/components/schemas/notificationType'
 | 
						|
              required:
 | 
						|
                - eventName
 | 
						|
                - urls
 | 
						|
                - titleTemplate
 | 
						|
                - bodyTemplate
 | 
						|
      responses:
 | 
						|
        '200':
 | 
						|
          description: Success
 | 
						|
          content:
 | 
						|
            application/json:
 | 
						|
              schema:
 | 
						|
                type: object
 | 
						|
                properties:
 | 
						|
                  settings:
 | 
						|
                    $ref: '../objects/Notification.yaml#/components/schemas/NotificationSettings'
 | 
						|
        '404':
 | 
						|
          $ref: '#/components/responses/notification404'
 | 
						|
  /api/notificationdata:
 | 
						|
    get:
 | 
						|
      operationId: getNotificationEventData
 | 
						|
      summary: Get notification event data
 | 
						|
      description: Get all Apprise notification event data for the server.
 | 
						|
      tags:
 | 
						|
        - Notification
 | 
						|
      responses:
 | 
						|
        '200':
 | 
						|
          description: Success
 | 
						|
          content:
 | 
						|
            application/json:
 | 
						|
              schema:
 | 
						|
                type: object
 | 
						|
                properties:
 | 
						|
                  events:
 | 
						|
                    type: array
 | 
						|
                    items:
 | 
						|
                      $ref: '../objects/Notification.yaml#/components/schemas/NotificationEvent'
 | 
						|
        '404':
 | 
						|
          $ref: '#/components/responses/notification404'
 | 
						|
  /api/notifications/test:
 | 
						|
    get:
 | 
						|
      operationId: sendDefaultTestNotification
 | 
						|
      summary: Send general test notification
 | 
						|
      description: Send a test notification.
 | 
						|
      tags:
 | 
						|
        - Notification
 | 
						|
      parameters:
 | 
						|
        - in: query
 | 
						|
          name: fail
 | 
						|
          description: Whether to intentionally cause the notification to fail. `0` for false, `1` for true.
 | 
						|
          schema:
 | 
						|
            type: integer
 | 
						|
      responses:
 | 
						|
        '200':
 | 
						|
          $ref: '#/components/responses/notification200'
 | 
						|
        '404':
 | 
						|
          $ref: '#/components/responses/notification404'
 | 
						|
  /api/notifications/{id}:
 | 
						|
    parameters:
 | 
						|
      - name: id
 | 
						|
        in: path
 | 
						|
        description: The ID of the notification.
 | 
						|
        required: true
 | 
						|
        schema:
 | 
						|
          $ref: '../objects/Notification.yaml#/components/schemas/notificationId'
 | 
						|
    delete:
 | 
						|
      operationId: deleteNotification
 | 
						|
      summary: Delete a notification
 | 
						|
      description: Delete the notification by ID and return the notification settings.
 | 
						|
      tags:
 | 
						|
        - Notification
 | 
						|
      responses:
 | 
						|
        '200':
 | 
						|
          description: Success
 | 
						|
          content:
 | 
						|
            application/json:
 | 
						|
              schema:
 | 
						|
                type: object
 | 
						|
                properties:
 | 
						|
                  settings:
 | 
						|
                    $ref: '../objects/Notification.yaml#/components/schemas/NotificationSettings'
 | 
						|
        '404':
 | 
						|
          $ref: '#/components/responses/notification404'
 | 
						|
    patch:
 | 
						|
      operationId: updateNotification
 | 
						|
      summary: Update a notification
 | 
						|
      description: Update an individual Notification by ID
 | 
						|
      tags:
 | 
						|
        - Notification
 | 
						|
      requestBody:
 | 
						|
        content:
 | 
						|
          application/json:
 | 
						|
            schema:
 | 
						|
              type: object
 | 
						|
              properties:
 | 
						|
                libraryId:
 | 
						|
                  $ref: '../objects/Library.yaml#/components/schemas/libraryId'
 | 
						|
                eventName:
 | 
						|
                  $ref: '../objects/Notification.yaml#/components/schemas/notificationEventName'
 | 
						|
                urls:
 | 
						|
                  $ref: '../objects/Notification.yaml#/components/schemas/urls'
 | 
						|
                titleTemplate:
 | 
						|
                  $ref: '../objects/Notification.yaml#/components/schemas/titleTemplate'
 | 
						|
                bodyTemplate:
 | 
						|
                  $ref: '../objects/Notification.yaml#/components/schemas/bodyTemplate'
 | 
						|
                enabled:
 | 
						|
                  $ref: '../objects/Notification.yaml#/components/schemas/enabled'
 | 
						|
                type:
 | 
						|
                  $ref: '../objects/Notification.yaml#/components/schemas/notificationType'
 | 
						|
      responses:
 | 
						|
        '200':
 | 
						|
          description: Success
 | 
						|
          content:
 | 
						|
            application/json:
 | 
						|
              schema:
 | 
						|
                type: object
 | 
						|
                properties:
 | 
						|
                  settings:
 | 
						|
                    $ref: '../objects/Notification.yaml#/components/schemas/NotificationSettings'
 | 
						|
        '404':
 | 
						|
          $ref: '#/components/responses/notification404'
 | 
						|
  /api/notifications/{id}/test:
 | 
						|
    parameters:
 | 
						|
      - name: id
 | 
						|
        in: path
 | 
						|
        description: The ID of the notification.
 | 
						|
        required: true
 | 
						|
        schema:
 | 
						|
          $ref: '../objects/Notification.yaml#/components/schemas/notificationId'
 | 
						|
    get:
 | 
						|
      operationId: sendTestNotification
 | 
						|
      summary: Send a test notification
 | 
						|
      description: Send a test to the given notification by ID.
 | 
						|
      tags:
 | 
						|
        - Notification
 | 
						|
      responses:
 | 
						|
        '200':
 | 
						|
          $ref: '#/components/responses/notification200'
 | 
						|
        '404':
 | 
						|
          $ref: '#/components/responses/notification404'
 |