223 lines
5.2 KiB
YAML
223 lines
5.2 KiB
YAML
openapi: 3.1.0
|
|
info:
|
|
title: Home Automation Backend (Python)
|
|
description: Python rewrite skeleton for the home automation backend. This stage
|
|
provides only the foundation for future module migration.
|
|
version: 0.1.0
|
|
paths:
|
|
/status:
|
|
get:
|
|
tags:
|
|
- system
|
|
summary: Get Status
|
|
operationId: get_status_status_get
|
|
responses:
|
|
'200':
|
|
description: Successful Response
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/StatusResponse'
|
|
/login:
|
|
get:
|
|
tags:
|
|
- auth
|
|
summary: Login Page
|
|
operationId: login_page_login_get
|
|
responses:
|
|
'200':
|
|
description: Successful Response
|
|
content:
|
|
text/html:
|
|
schema:
|
|
type: string
|
|
post:
|
|
tags:
|
|
- auth
|
|
summary: Login Submit
|
|
operationId: login_submit_login_post
|
|
requestBody:
|
|
content:
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/Body_login_submit_login_post'
|
|
required: true
|
|
responses:
|
|
'200':
|
|
description: Successful Response
|
|
content:
|
|
text/html:
|
|
schema:
|
|
type: string
|
|
'422':
|
|
description: Validation Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/HTTPValidationError'
|
|
/logout:
|
|
post:
|
|
tags:
|
|
- auth
|
|
summary: Logout
|
|
operationId: logout_logout_post
|
|
requestBody:
|
|
content:
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/Body_logout_logout_post'
|
|
required: true
|
|
responses:
|
|
'200':
|
|
description: Successful Response
|
|
content:
|
|
application/json:
|
|
schema: {}
|
|
'422':
|
|
description: Validation Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/HTTPValidationError'
|
|
/:
|
|
get:
|
|
tags:
|
|
- pages
|
|
summary: Home
|
|
operationId: home__get
|
|
responses:
|
|
'200':
|
|
description: Successful Response
|
|
content:
|
|
text/html:
|
|
schema:
|
|
type: string
|
|
/admin:
|
|
get:
|
|
tags:
|
|
- pages
|
|
summary: Admin Page
|
|
operationId: admin_page_admin_get
|
|
responses:
|
|
'200':
|
|
description: Successful Response
|
|
content:
|
|
text/html:
|
|
schema:
|
|
type: string
|
|
/homeassistant/publish:
|
|
post:
|
|
tags:
|
|
- homeassistant
|
|
summary: Publish From Homeassistant
|
|
operationId: publish_from_homeassistant_homeassistant_publish_post
|
|
responses:
|
|
'200':
|
|
description: Successful Response
|
|
content:
|
|
application/json:
|
|
schema: {}
|
|
/location/record:
|
|
post:
|
|
tags:
|
|
- location
|
|
summary: Create Location Record
|
|
operationId: create_location_record_location_record_post
|
|
responses:
|
|
'200':
|
|
description: Successful Response
|
|
content:
|
|
application/json:
|
|
schema: {}
|
|
/poo/record:
|
|
post:
|
|
tags:
|
|
- poo
|
|
summary: Create Poo Record
|
|
operationId: create_poo_record_poo_record_post
|
|
responses:
|
|
'200':
|
|
description: Successful Response
|
|
content:
|
|
application/json:
|
|
schema: {}
|
|
/poo/latest:
|
|
get:
|
|
tags:
|
|
- poo
|
|
summary: Notify Latest Poo
|
|
operationId: notify_latest_poo_poo_latest_get
|
|
responses:
|
|
'200':
|
|
description: Successful Response
|
|
content:
|
|
application/json:
|
|
schema: {}
|
|
components:
|
|
schemas:
|
|
Body_login_submit_login_post:
|
|
properties:
|
|
username:
|
|
type: string
|
|
title: Username
|
|
password:
|
|
type: string
|
|
title: Password
|
|
csrf_token:
|
|
type: string
|
|
title: Csrf Token
|
|
type: object
|
|
required:
|
|
- username
|
|
- password
|
|
- csrf_token
|
|
title: Body_login_submit_login_post
|
|
Body_logout_logout_post:
|
|
properties:
|
|
csrf_token:
|
|
type: string
|
|
title: Csrf Token
|
|
type: object
|
|
required:
|
|
- csrf_token
|
|
title: Body_logout_logout_post
|
|
HTTPValidationError:
|
|
properties:
|
|
detail:
|
|
items:
|
|
$ref: '#/components/schemas/ValidationError'
|
|
type: array
|
|
title: Detail
|
|
type: object
|
|
title: HTTPValidationError
|
|
StatusResponse:
|
|
properties:
|
|
status:
|
|
type: string
|
|
title: Status
|
|
type: object
|
|
required:
|
|
- status
|
|
title: StatusResponse
|
|
ValidationError:
|
|
properties:
|
|
loc:
|
|
items:
|
|
anyOf:
|
|
- type: string
|
|
- type: integer
|
|
type: array
|
|
title: Location
|
|
msg:
|
|
type: string
|
|
title: Message
|
|
type:
|
|
type: string
|
|
title: Error Type
|
|
type: object
|
|
required:
|
|
- loc
|
|
- msg
|
|
- type
|
|
title: ValidationError
|