openkarotz-openapi/openkarotz-openapi.yaml
Guilhem Bonnefille 21180aa440 Add response schema for sleep and wakeup
Use composition/inheritance.
2020-07-29 22:54:58 +02:00

212 lines
6.2 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

openapi: 3.0.3
info:
title: OpenKarotz API
license:
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0.html
version: "3.10"
servers:
- url: /
paths:
/cgi-bin/status:
summary: status
description: Permet dafficher des informations sur le karotz, la réponse est
un tableau JSON avec les attributs
get:
summary: get status
operationId: status
responses:
"200":
description: la liste des informations sur le karotz
content:
application/json:
schema:
$ref: '#/components/schemas/status'
example:
version: "210"
ears_disabled: "0"
sleep: "1"
sleep_time: "1398086161"
led_color: "000000"
led_pulse: "0"
tts_cache_size: "1"
usb_free_space: -1
karotz_free_space: 144.0M
eth_mac: 00:13:3B:90:97:5D
wlan_mac: 00:0E:8E:2C:93:B2
nb_tags: "14"
nb_moods: "305"
nb_sounds: "15"
nb_stories: "0"
karotz_percent_used_space: "38"
usb_percent_used_space: ""
data_dir: /usr/openkarotz
/cgi-bin/get_version:
summary: get_version
description: Renvoi les versions des différents composants
get:
summary: get version
operationId: version
responses:
"200":
description: Renvoi les versions des différents composants
content:
application/json:
schema:
$ref: '#/components/schemas/versions'
example:
version: "210"
rootfs_version: 2.0.r8
patch_version: "213"
serial: 61xxxxxxxxx8926xxxxxxxxxx016
return: "0"
/cgi-bin/wakeup:
summary: wakeup
description: Permet de réveiller le lapin, si le paramètre silent est utilisé
avec la valeur 1 aucun son nest joué.
get:
summary: wakeup karotz
operationId: wakeup
parameters:
- name: silent
in: query
description: si le paramètre silent est utilisé avec la valeur 1 aucun son
nest joué.
required: false
style: form
explode: true
schema:
type: integer
responses:
"200":
description: Permet de réveiller le lapin
content:
application/json:
schema:
$ref: '#/components/schemas/wakeup_response'
example:
return: "0"
silent: "0"
/cgi-bin/sleep:
summary: sleep
description: Permet d'endormir le lapin.
get:
summary: sleep karotz
operationId: sleep
responses:
"200":
description: Permet d'endormir le lapin
content:
application/json:
schema:
$ref: '#/components/schemas/simple_response'
example:
return: "0"
components:
schemas:
status:
title: status
type: object
properties:
version:
type: string
description: version des scripts installés
ears_disabled:
type: integer
description: 1 si les oreilles on été désactivées, 0 sinon
sleep:
type: integer
description: 1 si le lapin dors, 0 sinon
sleep_time:
type: string
description: si le lapin dors, contient un Timestamp de lheure dendormissement.
led_color:
type: string
description: couleur actuelle de la led
led_pulse:
type: integer
description: 1 si le lapin respire, 0 si fixe.
tts_cache_size:
type: integer
description: Nombre de phrase(s) dans le cache TTS.
usb_stick_free_space:
description: Place libre sur la clé USB (Version lisible)
oneOf:
- type: string
- type: integer
karotz_free_Space:
description: Place libre dans le Karotz (Version lisible)
oneOf:
- type: string
- type: integer
eth_mac:
type: string
description: Adresse MAC adaptateur ethernet
wlan_mac:
type: string
description: Adresse MAC adaptateur WIFI
nb_tags:
type: integer
description: Nombre de tags enregistrés.
nb_moods:
type: integer
description: Nombre dhumeurs installées.
nb_sounds:
type: integer
description: Nombre de Sons Installés.
nb_stories:
type: integer
description: Nombre dHistoires Installées.
karotz_percent_used_space:
type: integer
description: Espace utilisé dans la mémoire du Karotz
usb_percent_used_space:
description: Espace utilisé sur la clef USB
oneOf:
- type: string
- type: integer
data_dir:
type: string
description: Emplacement des fichiers de donnés
versions:
title: versions
type: object
properties:
version:
type: string
description: version des scripts installée.
rootfs_version:
type: string
description: version du firmware
patch_version:
type: string
description: version des patchs installés
serial:
type: string
description: Numéro de série du lapin (Unique)
simple_response:
title: simple response
type: object
required:
- return
properties:
return:
type: integer
description: indicateur de succès de l'opération
enum:
- 0
- 1
wakeup_response:
title: wakeup response
allOf:
- $ref: '#/components/schemas/simple_response'
- type: object
properties:
silent:
type: string
# FIXME: produce an error. Incompatibility with inheritance?
#oneOf:
#- type: string
#- type: integer
description: la valeur silent