mirror of
https://github.com/caronc/apprise-api.git
synced 2024-12-04 22:10:42 +01:00
199 lines
5.0 KiB
YAML
199 lines
5.0 KiB
YAML
openapi: '3.0.3'
|
|
info:
|
|
title: Apprise API
|
|
description: https://github.com/caronc/apprise-api
|
|
version: 0.7.0
|
|
paths:
|
|
/notify:
|
|
post:
|
|
operationId: Stateless_SendNotification
|
|
summary: Sends one or more notifications to the URLs identified as part of the payload, or those identified in the environment variable APPRISE_STATELESS_URLS.
|
|
requestBody:
|
|
required: true
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/StatelessNotificationRequest'
|
|
responses:
|
|
200:
|
|
description: OK
|
|
tags:
|
|
- Stateless
|
|
/add/{key}:
|
|
post:
|
|
operationId: Persistent_AddConfiguration
|
|
summary: Saves Apprise Configuration (or set of URLs) to the persistent store.
|
|
parameters:
|
|
- in: path
|
|
name: key
|
|
required: true
|
|
schema:
|
|
type: string
|
|
description: Configuration key
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/AddConfigurationRequest'
|
|
responses:
|
|
200:
|
|
description: OK
|
|
tags:
|
|
- Persistent
|
|
/del/{key}:
|
|
post:
|
|
operationId: Persistent_RemoveConfiguration
|
|
summary: Removes Apprise Configuration from the persistent store.
|
|
parameters:
|
|
- $ref: '#/components/parameters/key'
|
|
responses:
|
|
200:
|
|
description: OK
|
|
tags:
|
|
- Persistent
|
|
/get/{key}:
|
|
post:
|
|
operationId: Persistent_GetConfiguration
|
|
summary: Returns the Apprise Configuration from the persistent store.
|
|
parameters:
|
|
- $ref: '#/components/parameters/key'
|
|
responses:
|
|
200:
|
|
description: OK
|
|
content:
|
|
text/plain:
|
|
schema:
|
|
type: string
|
|
tags:
|
|
- Persistent
|
|
/notify/{key}:
|
|
post:
|
|
operationId: Persistent_SendNotification
|
|
summary: Sends notification(s) to all of the end points you've previously configured associated with a {KEY}.
|
|
parameters:
|
|
- $ref: '#/components/parameters/key'
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/PersistentNotificationRequest'
|
|
responses:
|
|
200:
|
|
description: OK
|
|
tags:
|
|
- Persistent
|
|
/json/urls/{key}:
|
|
get:
|
|
operationId: Persistent_GetUrls
|
|
summary: Returns a JSON response object that contains all of the URLS and Tags associated with the key specified.
|
|
parameters:
|
|
- $ref: '#/components/parameters/key'
|
|
- in: query
|
|
name: privacy
|
|
schema:
|
|
type: integer
|
|
enum: [0, 1]
|
|
# This should be changed to use 'oneOf' when upgrading to OpenApi 3.1
|
|
x-enumNames: ["ShowSecrets", "HideSecrets"]
|
|
required: false
|
|
- in: query
|
|
name: tag
|
|
schema:
|
|
type: string
|
|
default: all
|
|
required: false
|
|
responses:
|
|
200:
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/JsonUrlsResponse'
|
|
tags:
|
|
- Persistent
|
|
|
|
components:
|
|
parameters:
|
|
key:
|
|
in: path
|
|
name: key
|
|
required: true
|
|
schema:
|
|
type: string
|
|
minLength: 1
|
|
maxLength: 64
|
|
description: Configuration key
|
|
schemas:
|
|
NotificationType:
|
|
type: string
|
|
enum: [info, warning, failure]
|
|
default: info
|
|
NotificationFormat:
|
|
type: string
|
|
enum: [text, markdown, html]
|
|
default: text
|
|
StatelessNotificationRequest:
|
|
properties:
|
|
urls:
|
|
type: array
|
|
items:
|
|
type: string
|
|
body:
|
|
type: string
|
|
title:
|
|
type: string
|
|
type:
|
|
$ref: '#/components/schemas/NotificationType'
|
|
format:
|
|
$ref: '#/components/schemas/NotificationFormat'
|
|
tag:
|
|
type: string
|
|
required:
|
|
- body
|
|
AddConfigurationRequest:
|
|
properties:
|
|
urls:
|
|
type: array
|
|
items:
|
|
type: string
|
|
default: null
|
|
config:
|
|
type: string
|
|
format:
|
|
type: string
|
|
enum: [text, yaml]
|
|
PersistentNotificationRequest:
|
|
properties:
|
|
body:
|
|
type: string
|
|
title:
|
|
type: string
|
|
type:
|
|
$ref: '#/components/schemas/NotificationType'
|
|
format:
|
|
$ref: '#/components/schemas/NotificationFormat'
|
|
tag:
|
|
type: string
|
|
default: all
|
|
required:
|
|
- body
|
|
JsonUrlsResponse:
|
|
properties:
|
|
tags:
|
|
type: array
|
|
items:
|
|
type: string
|
|
urls:
|
|
type: array
|
|
items:
|
|
type: object
|
|
$ref: '#/components/schemas/url'
|
|
url:
|
|
properties:
|
|
url:
|
|
type: string
|
|
tags:
|
|
type: array
|
|
items:
|
|
type: string
|