-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathopenapi.yaml
More file actions
164 lines (164 loc) · 3.85 KB
/
openapi.yaml
File metadata and controls
164 lines (164 loc) · 3.85 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
openapi: 3.1.0
info:
title: Genau Tapi! Backend
version: 0.1.0
paths:
/chat:
post:
summary: Chat Endpoint
operationId: chat_endpoint_chat_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ChatRequest'
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ChatResponse'
/leaderboard:
get:
summary: Leaderboard Endpoint
operationId: leaderboard_endpoint_leaderboard_get
responses:
'200':
description: Successful Response
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ScoreEntry'
/sessions:
post:
summary: Create Session
operationId: create_session
responses:
'200':
description: Session Created
content:
application/json:
schema:
$ref: '#/components/schemas/SessionResponse'
/history/{session_id}:
get:
summary: Get Chat History
operationId: get_history
parameters:
- name: session_id
in: path
required: true
schema:
type: string
responses:
'200':
description: History
content:
application/json:
schema:
$ref: '#/components/schemas/HistoryResponse'
components:
schemas:
ChatRequest:
properties:
transcript:
type: string
title: Transcript
streak:
type: integer
default: 1
title: Streak
memory:
type: string
default: ""
title: Memory
session_id:
type: string
title: Session ID
nullable: true
required:
- transcript
type: object
title: ChatRequest
ChatResponse:
properties:
reply:
type: string
title: Reply
correction:
type: string
default: ""
title: Correction
should_repeat:
type: boolean
default: false
title: Should Repeat
pronunciation_tip:
type: string
default: ""
title: Pronunciation Tip
score:
type: integer
title: Score
grammar_score:
type: integer
title: Grammar Score
pronunciation_score:
type: integer
title: Pronunciation Score
audio_url:
type: string
default: ""
title: Audio Url
audio_base64:
type: string
default: ""
title: Audio Base64
memory:
type: string
default: ""
title: Memory
required:
- reply
- score
- grammar_score
- pronunciation_score
type: object
title: ChatResponse
ScoreEntry:
type: object
properties:
ip:
type: string
score:
type: integer
SessionResponse:
properties:
id:
type: string
title: Session ID
created_at:
type: string
title: Created At
required:
- id
- created_at
type: object
title: SessionResponse
HistoryResponse:
type: object
properties:
messages:
type: array
items:
type: object
properties:
role:
type: string
content:
type: string
title: HistoryResponse