@xfloor/floor-memory-sdk-ts 1.0.4 → 1.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +152 -39
- package/dist/apis/DefaultApi.d.ts +88 -15
- package/dist/apis/DefaultApi.js +378 -10
- package/dist/apis/EditFloorApi.d.ts +3 -1
- package/dist/apis/EditFloorApi.js +3 -1
- package/dist/apis/EventApi.d.ts +5 -3
- package/dist/apis/EventApi.js +5 -3
- package/dist/apis/GetFloorInformationApi.d.ts +6 -4
- package/dist/apis/GetFloorInformationApi.js +8 -3
- package/dist/apis/GetRecentEventsApi.d.ts +4 -2
- package/dist/apis/GetRecentEventsApi.js +6 -1
- package/dist/apis/QueryApi.d.ts +3 -1
- package/dist/apis/QueryApi.js +3 -1
- package/dist/models/BlockDetails.d.ts +4 -2
- package/dist/models/BlockDetails.js +6 -4
- package/dist/models/ChangePassword200Response.d.ts +3 -1
- package/dist/models/ChangePassword200Response.js +3 -1
- package/dist/models/ConversationThreads200Response.d.ts +41 -0
- package/dist/models/ConversationThreads200Response.js +58 -0
- package/dist/models/ConversationThreads200ResponseThreadsInner.d.ts +46 -0
- package/dist/models/ConversationThreads200ResponseThreadsInner.js +61 -0
- package/dist/models/EditFloor400Response.d.ts +3 -1
- package/dist/models/EditFloor400Response.js +3 -1
- package/dist/models/EditFloor400ResponseError.d.ts +3 -1
- package/dist/models/EditFloor400ResponseError.js +3 -1
- package/dist/models/Event400Response.d.ts +3 -1
- package/dist/models/Event400Response.js +3 -1
- package/dist/models/Event400ResponseError.d.ts +3 -1
- package/dist/models/Event400ResponseError.js +3 -1
- package/dist/models/EventResponse.d.ts +3 -1
- package/dist/models/EventResponse.js +3 -1
- package/dist/models/FloorInfo.d.ts +3 -1
- package/dist/models/FloorInfo.js +3 -1
- package/dist/models/GetConversations200Response.d.ts +47 -0
- package/dist/models/GetConversations200Response.js +62 -0
- package/dist/models/GetConversations200ResponseConversationInner.d.ts +42 -0
- package/dist/models/GetConversations200ResponseConversationInner.js +55 -0
- package/dist/models/GetConversations200ResponseConversationInnerAssistant.d.ts +78 -0
- package/dist/models/GetConversations200ResponseConversationInnerAssistant.js +83 -0
- package/dist/models/GetConversations200ResponseConversationInnerAssistantChoicesInner.d.ts +61 -0
- package/dist/models/GetConversations200ResponseConversationInnerAssistantChoicesInner.js +62 -0
- package/dist/models/GetConversations200ResponseConversationInnerAssistantChoicesInnerAiModelDetails.d.ts +76 -0
- package/dist/models/GetConversations200ResponseConversationInnerAssistantChoicesInnerAiModelDetails.js +81 -0
- package/dist/models/GetConversations200ResponseConversationInnerAssistantChoicesInnerMessage.d.ts +40 -0
- package/dist/models/GetConversations200ResponseConversationInnerAssistantChoicesInnerMessage.js +57 -0
- package/dist/models/GetConversations200ResponseConversationInnerAssistantChoicesInnerPromptDetails.d.ts +40 -0
- package/dist/models/GetConversations200ResponseConversationInnerAssistantChoicesInnerPromptDetails.js +57 -0
- package/dist/models/GetConversations200ResponseConversationInnerAssistantFetchMultiplePosts.d.ts +59 -0
- package/dist/models/GetConversations200ResponseConversationInnerAssistantFetchMultiplePosts.js +70 -0
- package/dist/models/GetConversations200ResponseConversationInnerAssistantFetchMultiplePostsResultsInner.d.ts +82 -0
- package/dist/models/GetConversations200ResponseConversationInnerAssistantFetchMultiplePostsResultsInner.js +85 -0
- package/dist/models/GetConversations200ResponseConversationInnerUser.d.ts +59 -0
- package/dist/models/GetConversations200ResponseConversationInnerUser.js +70 -0
- package/dist/models/GetConversations200ResponseConversationInnerUserContext.d.ts +58 -0
- package/dist/models/GetConversations200ResponseConversationInnerUserContext.js +69 -0
- package/dist/models/GetFloorInformation200Response.d.ts +3 -1
- package/dist/models/GetFloorInformation200Response.js +3 -1
- package/dist/models/GetRecentEvents200Response.d.ts +3 -1
- package/dist/models/GetRecentEvents200Response.js +3 -1
- package/dist/models/GetRecentEvents200ResponseItemsInner.d.ts +3 -1
- package/dist/models/GetRecentEvents200ResponseItemsInner.js +3 -1
- package/dist/models/GetRecentEvents200ResponseItemsInnerAuthor.d.ts +3 -1
- package/dist/models/GetRecentEvents200ResponseItemsInnerAuthor.js +3 -1
- package/dist/models/GetRecentEvents400Response.d.ts +3 -1
- package/dist/models/GetRecentEvents400Response.js +3 -1
- package/dist/models/GetRecentEvents400ResponseError.d.ts +3 -1
- package/dist/models/GetRecentEvents400ResponseError.js +3 -1
- package/dist/models/Media.d.ts +3 -1
- package/dist/models/Media.js +3 -1
- package/dist/models/Model400ErrorCode.d.ts +3 -1
- package/dist/models/Model400ErrorCode.js +3 -1
- package/dist/models/PostAdd.d.ts +58 -0
- package/dist/models/PostAdd.js +69 -0
- package/dist/models/Query422Response.d.ts +3 -1
- package/dist/models/Query422Response.js +3 -1
- package/dist/models/Query422ResponseError.d.ts +3 -1
- package/dist/models/Query422ResponseError.js +3 -1
- package/dist/models/QueryRequest.d.ts +4 -2
- package/dist/models/QueryRequest.js +6 -2
- package/dist/models/QueryRequestFilters.d.ts +3 -1
- package/dist/models/QueryRequestFilters.js +3 -1
- package/dist/models/QueryResponse.d.ts +3 -1
- package/dist/models/QueryResponse.js +3 -1
- package/dist/models/QueryResponseItemsInner.d.ts +3 -1
- package/dist/models/QueryResponseItemsInner.js +3 -1
- package/dist/models/ResetPassword200Response.d.ts +3 -1
- package/dist/models/ResetPassword200Response.js +3 -1
- package/dist/models/ResetPassword400Response.d.ts +3 -1
- package/dist/models/ResetPassword400Response.js +3 -1
- package/dist/models/SendSignInValidationCode200Response.d.ts +46 -0
- package/dist/models/SendSignInValidationCode200Response.js +59 -0
- package/dist/models/SendValidationCode200Response.d.ts +3 -1
- package/dist/models/SendValidationCode200Response.js +3 -1
- package/dist/models/SendValidationCodeRequest.d.ts +3 -1
- package/dist/models/SendValidationCodeRequest.js +3 -1
- package/dist/models/SignInWithEmail200Response.d.ts +3 -1
- package/dist/models/SignInWithEmail200Response.js +3 -1
- package/dist/models/SignInWithEmail200ResponsePodInfo.d.ts +3 -1
- package/dist/models/SignInWithEmail200ResponsePodInfo.js +3 -1
- package/dist/models/SignInWithEmail200ResponseProfile.d.ts +3 -1
- package/dist/models/SignInWithEmail200ResponseProfile.js +3 -1
- package/dist/models/SignInWithEmail200ResponseProfileAvatar.d.ts +3 -1
- package/dist/models/SignInWithEmail200ResponseProfileAvatar.js +3 -1
- package/dist/models/SignUp200Response.d.ts +3 -1
- package/dist/models/SignUp200Response.js +3 -1
- package/dist/models/SignUpResponse.d.ts +3 -1
- package/dist/models/SignUpResponse.js +3 -1
- package/dist/models/Threads.d.ts +46 -0
- package/dist/models/Threads.js +61 -0
- package/dist/models/UserDetails.d.ts +3 -1
- package/dist/models/UserDetails.js +3 -1
- package/dist/models/ValidateCode400Response.d.ts +3 -1
- package/dist/models/ValidateCode400Response.js +3 -1
- package/dist/models/ValidateCode400ResponseError.d.ts +3 -1
- package/dist/models/ValidateCode400ResponseError.js +3 -1
- package/dist/models/ValidateCode412Response.d.ts +3 -1
- package/dist/models/ValidateCode412Response.js +3 -1
- package/dist/models/ValidateCodeRequest.d.ts +3 -1
- package/dist/models/ValidateCodeRequest.js +3 -1
- package/dist/models/index.d.ts +16 -0
- package/dist/models/index.js +16 -0
- package/dist/runtime.d.ts +3 -1
- package/dist/runtime.js +3 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
# @xfloor/floor-memory-sdk-ts@1.0.
|
|
1
|
+
# @xfloor/floor-memory-sdk-ts@1.0.6
|
|
2
2
|
|
|
3
3
|
A TypeScript SDK client for the appfloor.in API.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
### Usage
|
|
6
6
|
|
|
7
7
|
First, install the SDK from npm.
|
|
8
8
|
|
|
@@ -18,25 +18,21 @@ import {
|
|
|
18
18
|
Configuration,
|
|
19
19
|
DefaultApi,
|
|
20
20
|
} from '@xfloor/floor-memory-sdk-ts';
|
|
21
|
-
import type {
|
|
21
|
+
import type { ApiDeveloperCreateAppPostRequest } from '@xfloor/floor-memory-sdk-ts';
|
|
22
22
|
|
|
23
23
|
async function example() {
|
|
24
24
|
console.log("🚀 Testing @xfloor/floor-memory-sdk-ts SDK...");
|
|
25
|
-
const
|
|
26
|
-
// Configure HTTP bearer authorization: bearer
|
|
27
|
-
accessToken: "YOUR BEARER TOKEN",
|
|
28
|
-
});
|
|
29
|
-
const api = new DefaultApi(config);
|
|
25
|
+
const api = new DefaultApi();
|
|
30
26
|
|
|
31
27
|
const body = {
|
|
32
|
-
// string
|
|
33
|
-
|
|
34
|
-
//
|
|
35
|
-
|
|
36
|
-
} satisfies
|
|
28
|
+
// string
|
|
29
|
+
inputInfo: inputInfo_example,
|
|
30
|
+
// Blob (optional)
|
|
31
|
+
icon: BINARY_DATA_HERE,
|
|
32
|
+
} satisfies ApiDeveloperCreateAppPostRequest;
|
|
37
33
|
|
|
38
34
|
try {
|
|
39
|
-
const data = await api.
|
|
35
|
+
const data = await api.apiDeveloperCreateAppPost(body);
|
|
40
36
|
console.log(data);
|
|
41
37
|
} catch (error) {
|
|
42
38
|
console.error(error);
|
|
@@ -48,44 +44,158 @@ example().catch(console.error);
|
|
|
48
44
|
```
|
|
49
45
|
|
|
50
46
|
|
|
51
|
-
|
|
47
|
+
### Documentation
|
|
52
48
|
|
|
53
49
|
### API Endpoints
|
|
54
50
|
|
|
55
51
|
All URIs are relative to *https://appfloor.in*
|
|
56
52
|
|
|
57
|
-
| Class | Method | HTTP request |
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
*DefaultApi*
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
*DefaultApi*
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
*
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
53
|
+
| Class | Method | HTTP request |
|
|
54
|
+
|
|
55
|
+
Description
|
|
56
|
+
| ----- | ------ | ------------ |
|
|
57
|
+
|
|
58
|
+
-------------
|
|
59
|
+
*DefaultApi*
|
|
60
|
+
|
|
61
|
+
| [**apiDeveloperCreateAppPost**](docs/DefaultApi.md#apidevelopercreateapppost) | **POST** /api/developer/create/app |
|
|
62
|
+
|
|
63
|
+
Create App
|
|
64
|
+
*DefaultApi*
|
|
65
|
+
|
|
66
|
+
| [**apiDeveloperModifyAppPost**](docs/DefaultApi.md#apidevelopermodifyapppost) | **POST** /api/developer/modify/app |
|
|
67
|
+
|
|
68
|
+
Modify Floorpod App
|
|
69
|
+
*DefaultApi*
|
|
70
|
+
|
|
71
|
+
| [**changeEmail**](docs/DefaultApi.md#changeemail) | **POST** /auth-service/change/email |
|
|
72
|
+
|
|
73
|
+
Change email ID
|
|
74
|
+
*DefaultApi*
|
|
75
|
+
|
|
76
|
+
| [**changeMobileNumber**](docs/DefaultApi.md#changemobilenumber) | **POST** /auth-service/change/mobile |
|
|
77
|
+
|
|
78
|
+
Change Mobile number
|
|
79
|
+
*DefaultApi*
|
|
80
|
+
|
|
81
|
+
| [**changePassword**](docs/DefaultApi.md#changepassword) | **POST** /auth-service/password/change |
|
|
82
|
+
|
|
83
|
+
Change Password
|
|
84
|
+
*DefaultApi*
|
|
85
|
+
|
|
86
|
+
| [**conversationThreads**](docs/DefaultApi.md#conversationthreads) | **GET** /agent/memory/threads |
|
|
87
|
+
|
|
88
|
+
Get the conversational threads
|
|
89
|
+
*DefaultApi*
|
|
90
|
+
|
|
91
|
+
| [**getConversations**](docs/DefaultApi.md#getconversations) | **GET** /agent/memory/conversations |
|
|
92
|
+
|
|
93
|
+
Conversations
|
|
94
|
+
*DefaultApi*
|
|
95
|
+
|
|
96
|
+
| [**makeFloorPrivate**](docs/DefaultApi.md#makefloorprivate) | **POST** /api/memory/make/floor/private |
|
|
97
|
+
|
|
98
|
+
Make floor Private
|
|
99
|
+
*DefaultApi*
|
|
100
|
+
|
|
101
|
+
| [**makeFloorPublic**](docs/DefaultApi.md#makefloorpublic) | **POST** /api/memory/make/floor/public |
|
|
102
|
+
|
|
103
|
+
Make floor public
|
|
104
|
+
*DefaultApi*
|
|
105
|
+
|
|
106
|
+
| [**registerExternalUserIdentity**](docs/DefaultApi.md#registerexternaluseridentity) | **POST** /memory/identity/external-user |
|
|
107
|
+
|
|
108
|
+
External User Registration
|
|
109
|
+
*DefaultApi*
|
|
110
|
+
|
|
111
|
+
| [**renameFloor**](docs/DefaultApi.md#renamefloor) | **POST** /api/memory/change/floor/id |
|
|
112
|
+
|
|
113
|
+
Rename floor
|
|
114
|
+
*DefaultApi*
|
|
115
|
+
|
|
116
|
+
| [**resetPassword**](docs/DefaultApi.md#resetpassword) | **POST** /auth-service/password/reset |
|
|
117
|
+
|
|
118
|
+
Reset Password
|
|
119
|
+
*DefaultApi*
|
|
120
|
+
|
|
121
|
+
| [**sendSignInValidationCode**](docs/DefaultApi.md#sendsigninvalidationcode) | **POST** /auth-service/send/sign/in/validation/code |
|
|
122
|
+
|
|
123
|
+
Send Sign-In Validation Code (OTP)
|
|
124
|
+
*DefaultApi*
|
|
125
|
+
|
|
126
|
+
| [**sendValidationCode**](docs/DefaultApi.md#sendvalidationcodeoperation) | **POST** /auth-service/send/validation/code |
|
|
127
|
+
|
|
128
|
+
Send Validation code
|
|
129
|
+
*DefaultApi*
|
|
130
|
+
|
|
131
|
+
| [**signInWithEmail**](docs/DefaultApi.md#signinwithemail) | **POST** /auth-service/sign/in/with/email |
|
|
132
|
+
|
|
133
|
+
Sign In with email ID
|
|
134
|
+
*DefaultApi*
|
|
135
|
+
|
|
136
|
+
| [**signInWithMobileNumber**](docs/DefaultApi.md#signinwithmobilenumber) | **POST** /auth-service/sign/in/with/mobile/number |
|
|
137
|
+
|
|
138
|
+
Sign In with Mobile number
|
|
139
|
+
*DefaultApi*
|
|
140
|
+
|
|
141
|
+
| [**signUp**](docs/DefaultApi.md#signup) | **POST** /auth-service/sign/up |
|
|
142
|
+
|
|
143
|
+
Sign Up
|
|
144
|
+
*DefaultApi*
|
|
145
|
+
|
|
146
|
+
| [**validateCode**](docs/DefaultApi.md#validatecodeoperation) | **POST** /auth-service/validate/activation/code |
|
|
147
|
+
|
|
148
|
+
Validation
|
|
149
|
+
*EditFloorApi*
|
|
150
|
+
|
|
151
|
+
| [**editFloor**](docs/EditFloorApi.md#editfloor) | **POST** /api/memory/edit/floor/{floor_id} |
|
|
152
|
+
|
|
153
|
+
Edit floor
|
|
154
|
+
*EventApi*
|
|
155
|
+
|
|
156
|
+
| [**event**](docs/EventApi.md#event) | **POST** /api/memory/events |
|
|
157
|
+
|
|
158
|
+
Create Event (Post Content)
|
|
159
|
+
*GetFloorInformationApi*
|
|
160
|
+
|
|
161
|
+
| [**getFloorInformation**](docs/GetFloorInformationApi.md#getfloorinformation) | **GET** /api/memory/floor/info/{floor_id} |
|
|
162
|
+
|
|
163
|
+
Basic information of a floor
|
|
164
|
+
*GetRecentEventsApi*
|
|
165
|
+
|
|
166
|
+
| [**getRecentEvents**](docs/GetRecentEventsApi.md#getrecentevents) | **GET** /api/memory/recent/events |
|
|
167
|
+
|
|
168
|
+
Recent Events
|
|
169
|
+
*QueryApi*
|
|
170
|
+
|
|
171
|
+
| [**query**](docs/QueryApi.md#queryoperation) | **POST** /agent/memory/query |
|
|
172
|
+
|
|
173
|
+
Query (Primary API)
|
|
77
174
|
|
|
78
175
|
|
|
79
176
|
### Models
|
|
80
177
|
|
|
81
178
|
- [BlockDetails](docs/BlockDetails.md)
|
|
82
179
|
- [ChangePassword200Response](docs/ChangePassword200Response.md)
|
|
180
|
+
- [ConversationThreads200Response](docs/ConversationThreads200Response.md)
|
|
181
|
+
- [ConversationThreads200ResponseThreadsInner](docs/ConversationThreads200ResponseThreadsInner.md)
|
|
83
182
|
- [EditFloor400Response](docs/EditFloor400Response.md)
|
|
84
183
|
- [EditFloor400ResponseError](docs/EditFloor400ResponseError.md)
|
|
85
184
|
- [Event400Response](docs/Event400Response.md)
|
|
86
185
|
- [Event400ResponseError](docs/Event400ResponseError.md)
|
|
87
186
|
- [EventResponse](docs/EventResponse.md)
|
|
88
187
|
- [FloorInfo](docs/FloorInfo.md)
|
|
188
|
+
- [GetConversations200Response](docs/GetConversations200Response.md)
|
|
189
|
+
- [GetConversations200ResponseConversationInner](docs/GetConversations200ResponseConversationInner.md)
|
|
190
|
+
- [GetConversations200ResponseConversationInnerAssistant](docs/GetConversations200ResponseConversationInnerAssistant.md)
|
|
191
|
+
- [GetConversations200ResponseConversationInnerAssistantChoicesInner](docs/GetConversations200ResponseConversationInnerAssistantChoicesInner.md)
|
|
192
|
+
- [GetConversations200ResponseConversationInnerAssistantChoicesInnerAiModelDetails](docs/GetConversations200ResponseConversationInnerAssistantChoicesInnerAiModelDetails.md)
|
|
193
|
+
- [GetConversations200ResponseConversationInnerAssistantChoicesInnerMessage](docs/GetConversations200ResponseConversationInnerAssistantChoicesInnerMessage.md)
|
|
194
|
+
- [GetConversations200ResponseConversationInnerAssistantChoicesInnerPromptDetails](docs/GetConversations200ResponseConversationInnerAssistantChoicesInnerPromptDetails.md)
|
|
195
|
+
- [GetConversations200ResponseConversationInnerAssistantFetchMultiplePosts](docs/GetConversations200ResponseConversationInnerAssistantFetchMultiplePosts.md)
|
|
196
|
+
- [GetConversations200ResponseConversationInnerAssistantFetchMultiplePostsResultsInner](docs/GetConversations200ResponseConversationInnerAssistantFetchMultiplePostsResultsInner.md)
|
|
197
|
+
- [GetConversations200ResponseConversationInnerUser](docs/GetConversations200ResponseConversationInnerUser.md)
|
|
198
|
+
- [GetConversations200ResponseConversationInnerUserContext](docs/GetConversations200ResponseConversationInnerUserContext.md)
|
|
89
199
|
- [GetFloorInformation200Response](docs/GetFloorInformation200Response.md)
|
|
90
200
|
- [GetRecentEvents200Response](docs/GetRecentEvents200Response.md)
|
|
91
201
|
- [GetRecentEvents200ResponseItemsInner](docs/GetRecentEvents200ResponseItemsInner.md)
|
|
@@ -94,6 +204,7 @@ All URIs are relative to *https://appfloor.in*
|
|
|
94
204
|
- [GetRecentEvents400ResponseError](docs/GetRecentEvents400ResponseError.md)
|
|
95
205
|
- [Media](docs/Media.md)
|
|
96
206
|
- [Model400ErrorCode](docs/Model400ErrorCode.md)
|
|
207
|
+
- [PostAdd](docs/PostAdd.md)
|
|
97
208
|
- [Query422Response](docs/Query422Response.md)
|
|
98
209
|
- [Query422ResponseError](docs/Query422ResponseError.md)
|
|
99
210
|
- [QueryRequest](docs/QueryRequest.md)
|
|
@@ -102,6 +213,7 @@ All URIs are relative to *https://appfloor.in*
|
|
|
102
213
|
- [QueryResponseItemsInner](docs/QueryResponseItemsInner.md)
|
|
103
214
|
- [ResetPassword200Response](docs/ResetPassword200Response.md)
|
|
104
215
|
- [ResetPassword400Response](docs/ResetPassword400Response.md)
|
|
216
|
+
- [SendSignInValidationCode200Response](docs/SendSignInValidationCode200Response.md)
|
|
105
217
|
- [SendValidationCode200Response](docs/SendValidationCode200Response.md)
|
|
106
218
|
- [SendValidationCodeRequest](docs/SendValidationCodeRequest.md)
|
|
107
219
|
- [SignInWithEmail200Response](docs/SignInWithEmail200Response.md)
|
|
@@ -110,6 +222,7 @@ All URIs are relative to *https://appfloor.in*
|
|
|
110
222
|
- [SignInWithEmail200ResponseProfileAvatar](docs/SignInWithEmail200ResponseProfileAvatar.md)
|
|
111
223
|
- [SignUp200Response](docs/SignUp200Response.md)
|
|
112
224
|
- [SignUpResponse](docs/SignUpResponse.md)
|
|
225
|
+
- [Threads](docs/Threads.md)
|
|
113
226
|
- [UserDetails](docs/UserDetails.md)
|
|
114
227
|
- [ValidateCode400Response](docs/ValidateCode400Response.md)
|
|
115
228
|
- [ValidateCode400ResponseError](docs/ValidateCode400ResponseError.md)
|
|
@@ -126,14 +239,14 @@ Authentication schemes defined for the API:
|
|
|
126
239
|
|
|
127
240
|
- **Type**: HTTP Bearer Token authentication
|
|
128
241
|
|
|
129
|
-
|
|
242
|
+
### About
|
|
130
243
|
|
|
131
244
|
This TypeScript SDK client supports the [Fetch API](https://fetch.spec.whatwg.org/)
|
|
132
245
|
and is automatically generated by the
|
|
133
246
|
[OpenAPI Generator](https://openapi-generator.tech) project:
|
|
134
247
|
|
|
135
248
|
- API version: `1.0.0`
|
|
136
|
-
- Package version: `1.0.
|
|
249
|
+
- Package version: `1.0.6`
|
|
137
250
|
- Generator version: `7.18.0`
|
|
138
251
|
- Build package: `org.openapitools.codegen.languages.TypeScriptFetchClientCodegen`
|
|
139
252
|
|
|
@@ -152,7 +265,7 @@ The generated npm module supports the following:
|
|
|
152
265
|
|
|
153
266
|
For more information, please visit [https://xfloor.ai/ipomo/blog1551084548304/](https://xfloor.ai/ipomo/blog1551084548304/)
|
|
154
267
|
|
|
155
|
-
|
|
268
|
+
### Development
|
|
156
269
|
|
|
157
270
|
### Building
|
|
158
271
|
|
|
@@ -172,6 +285,6 @@ Once you've built the package, you can publish it to npm:
|
|
|
172
285
|
npm publish
|
|
173
286
|
```
|
|
174
287
|
|
|
175
|
-
|
|
288
|
+
### License
|
|
176
289
|
|
|
177
290
|
[MIT](https://xfloor.ai/ipomo/blog1551084548304/1642341504453)
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Floor Memory
|
|
3
|
-
* The set APIs are used to develop Floor pds which can be used as their personal assistants.
|
|
3
|
+
* The set APIs are used to develop Floor pds which can be used as their personal assistants. This set of APIs are divided into two parts.
|
|
4
|
+
* - Memory and
|
|
5
|
+
* - Registration. The developer has two ways of using the APIs for the app development. Developer can choose to the Registration APIs for using the existing xfloor infracture or can implement custom Registration process. In the case of custom registration process, the developer is bound to provide proper authentication mechanisms and then send the user information to xlfoor.
|
|
4
6
|
*
|
|
5
7
|
* The version of the OpenAPI document: 1.0.0
|
|
6
8
|
* Contact: contact@ipomo.in
|
|
@@ -10,7 +12,15 @@
|
|
|
10
12
|
* Do not edit the class manually.
|
|
11
13
|
*/
|
|
12
14
|
import * as runtime from '../runtime';
|
|
13
|
-
import type { ChangePassword200Response, GetFloorInformation200Response, ResetPassword200Response, SendValidationCode200Response, SendValidationCodeRequest, SignInWithEmail200Response, SignUp200Response, UserDetails, ValidateCodeRequest } from '../models/index';
|
|
15
|
+
import type { ChangePassword200Response, ConversationThreads200Response, GetConversations200Response, GetFloorInformation200Response, ResetPassword200Response, SendSignInValidationCode200Response, SendValidationCode200Response, SendValidationCodeRequest, SignInWithEmail200Response, SignUp200Response, UserDetails, ValidateCodeRequest } from '../models/index';
|
|
16
|
+
export interface ApiDeveloperCreateAppPostRequest {
|
|
17
|
+
inputInfo: string;
|
|
18
|
+
icon?: Blob;
|
|
19
|
+
}
|
|
20
|
+
export interface ApiDeveloperModifyAppPostRequest {
|
|
21
|
+
inputInfo: string;
|
|
22
|
+
file?: Blob;
|
|
23
|
+
}
|
|
14
24
|
export interface ChangeEmailRequest {
|
|
15
25
|
newEmailId: string;
|
|
16
26
|
activationCode: string;
|
|
@@ -23,15 +33,23 @@ export interface ChangePasswordRequest {
|
|
|
23
33
|
activationCode: string;
|
|
24
34
|
userId?: string;
|
|
25
35
|
}
|
|
26
|
-
export interface
|
|
27
|
-
|
|
36
|
+
export interface ConversationThreadsRequest {
|
|
37
|
+
userId: string;
|
|
38
|
+
floorId: string;
|
|
39
|
+
}
|
|
40
|
+
export interface GetConversationsRequest {
|
|
28
41
|
userId?: string;
|
|
29
|
-
|
|
42
|
+
threadId?: string;
|
|
43
|
+
}
|
|
44
|
+
export interface MakeFloorPrivateRequest {
|
|
45
|
+
floorId: string;
|
|
46
|
+
userId: string;
|
|
47
|
+
appId: string;
|
|
30
48
|
}
|
|
31
49
|
export interface MakeFloorPublicRequest {
|
|
32
|
-
floorId
|
|
33
|
-
userId
|
|
34
|
-
appId
|
|
50
|
+
floorId: string;
|
|
51
|
+
userId: string;
|
|
52
|
+
appId: string;
|
|
35
53
|
}
|
|
36
54
|
export interface RegisterExternalUserIdentityRequest {
|
|
37
55
|
mobileNumber?: string;
|
|
@@ -40,10 +58,10 @@ export interface RegisterExternalUserIdentityRequest {
|
|
|
40
58
|
appId?: string;
|
|
41
59
|
}
|
|
42
60
|
export interface RenameFloorRequest {
|
|
43
|
-
userId
|
|
44
|
-
appId
|
|
45
|
-
from
|
|
46
|
-
to
|
|
61
|
+
userId: string;
|
|
62
|
+
appId: string;
|
|
63
|
+
from: string;
|
|
64
|
+
to: string;
|
|
47
65
|
}
|
|
48
66
|
export interface ResetPasswordRequest {
|
|
49
67
|
activationCode: string;
|
|
@@ -51,6 +69,11 @@ export interface ResetPasswordRequest {
|
|
|
51
69
|
mobileNumber?: string;
|
|
52
70
|
appId?: string;
|
|
53
71
|
}
|
|
72
|
+
export interface SendSignInValidationCodeRequest {
|
|
73
|
+
appId: string;
|
|
74
|
+
mobileNumber?: string;
|
|
75
|
+
emailId?: string;
|
|
76
|
+
}
|
|
54
77
|
export interface SendValidationCodeOperationRequest {
|
|
55
78
|
sendValidationCodeRequest: SendValidationCodeRequest;
|
|
56
79
|
}
|
|
@@ -77,6 +100,26 @@ export interface ValidateCodeOperationRequest {
|
|
|
77
100
|
*
|
|
78
101
|
*/
|
|
79
102
|
export declare class DefaultApi extends runtime.BaseAPI {
|
|
103
|
+
/**
|
|
104
|
+
* Create a custom app using APIs. A 13 digit app ID gets created which takes title and description the app. An icon of specified size needs to be uploaded.
|
|
105
|
+
* Create App
|
|
106
|
+
*/
|
|
107
|
+
apiDeveloperCreateAppPostRaw(requestParameters: ApiDeveloperCreateAppPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<object>>;
|
|
108
|
+
/**
|
|
109
|
+
* Create a custom app using APIs. A 13 digit app ID gets created which takes title and description the app. An icon of specified size needs to be uploaded.
|
|
110
|
+
* Create App
|
|
111
|
+
*/
|
|
112
|
+
apiDeveloperCreateAppPost(requestParameters: ApiDeveloperCreateAppPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<object>;
|
|
113
|
+
/**
|
|
114
|
+
* Modify title, details or the app icon
|
|
115
|
+
* Modify Floorpod App
|
|
116
|
+
*/
|
|
117
|
+
apiDeveloperModifyAppPostRaw(requestParameters: ApiDeveloperModifyAppPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<object>>;
|
|
118
|
+
/**
|
|
119
|
+
* Modify title, details or the app icon
|
|
120
|
+
* Modify Floorpod App
|
|
121
|
+
*/
|
|
122
|
+
apiDeveloperModifyAppPost(requestParameters: ApiDeveloperModifyAppPostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<object>;
|
|
80
123
|
/**
|
|
81
124
|
* Updates the email ID associated with an existing user account after validating a one-time activation code sent to the **new email address**. This operation can only be performed by a **logged-in user**. When a user initiates an email change, an activation code is sent to the newly provided email ID. The email update takes effect only after the activation code is successfully validated. If the activation code validation fails, the email ID remains unchanged. --- ### **Authentication** This endpoint requires **Bearer Token authentication**. ``` Authorization: Bearer <access_token> ``` --- ### **Request Body** ```json { \"user_id\": \"string\", \"new_email_id\": \"string\", \"activation_code\": \"string\", \"app_id\":\"string\" } ``` **Field Description** * `user_id` – Unique identifier of the logged-in user * `new_email_id` – New email address to be associated with the account * `activation_code` – One-time activation code sent to the new email ID for verification --- ### **Flow Summary** 1. User is authenticated and logged in 2. User requests to change email ID 3. System sends an activation code to the **new email address** 4. User submits the activation code via this API 5. On successful validation, the email ID is updated --- ### **Successful Response** On successful validation: * The activation code is verified * The user’s email ID is updated immediately * A `success` string is returned confirming the email change --- ### **Error Response** The API returns an error response if: * The activation code is invalid or expired * The activation code does not match the user or email * The new email ID is already in use * Authorization fails or the bearer token is missing or invalid In all error cases, the existing email ID remains unchanged. --- ### **Behavior Notes** * Requires a prior call to `/auth-service/send/validation/code` with the proper mode. --- ### **Security Notes (Recommended)** * Activation codes are single-use and time-bound * Email changes require prior authentication * Rate limiting may be applied to prevent abuse --- ### **One-Line Summary** > Changes a user’s email ID after validating an activation code sent to the new email address.
|
|
82
125
|
* Change email ID
|
|
@@ -107,6 +150,26 @@ export declare class DefaultApi extends runtime.BaseAPI {
|
|
|
107
150
|
* Change Password
|
|
108
151
|
*/
|
|
109
152
|
changePassword(requestParameters: ChangePasswordRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ChangePassword200Response>;
|
|
153
|
+
/**
|
|
154
|
+
* ### Conversation Model - A **Thread** represents a single conversational context. - A **Conversation** is the ordered exchange of messages within a thread. - Threads are scoped per user and per floor. This API retrieves the list of **conversational threads** associated with a specific **user** within a specific **floor**. A **thread** represents a persistent conversation context between the user and the system (agent/assistant) inside a floor. Each thread maintains its own history and state, allowing users to resume previous conversations without losing context. The API returns **only thread metadata**, not the message content itself. This makes it suitable for: * Displaying a conversation list or sidebar * Allowing users to select and resume past conversations * Managing conversational memory per floor --- ## Key Concepts * **Thread**: A long-lived conversational context tied to a user and a floor * **Floor-scoped memory**: Conversations are isolated per floor; threads from one floor are not visible in another * **User-specific**: Threads are private to the requesting user --- ## Request Method `GET` --- ## Request Parameters (Query Parameters) | Parameter Name | Type | Required | Description | | -------------- | ------ | -------- | ---------------------------------------------------------------------------- | | `user_id` | String | **Yes** | Unique identifier of the user whose conversation threads are being requested | | `floor_id` | String | **Yes** | Identifier of the floor in which the conversations exist | --- ## Authorization & Access Rules * The caller must be authenticated as the given `user_id` * A user can retrieve **only their own threads** * Threads are scoped to the provided `floor_id` * Threads from other floors or other users are not accessible --- ## Response Format `application/json` --- ## Response Description The response contains: * The `user_id` for which threads were fetched * A list of thread metadata objects, sorted by **most recently updated first** --- ## Response Structure ### Top-Level Fields | Field | Type | Description | | --------- | ------ | ------------------------------------------------------------------------- | | `user_id` | String | Identifier of the user | | `threads` | Array | List of conversation threads belonging to the user in the specified floor | --- ### Thread Object (`threads[]`) | Field | Type | Description | | -------------- | ------------------- | ------------------------------------------------- | | `thread_id` | String | Unique identifier of the conversation thread | | `title` | String | Human-readable title summarizing the conversation | | `last_updated` | String (YYYY-MM-DD) | Date when the thread was last updated | --- ## Sample Success Response ```json { \"user_id\": \"59\", \"threads\": [ { \"thread_id\": \"55\", \"title\": \"elegant potentially hopelessly ambitious sneak\", \"last_updated\": \"2025-04-26\" }, { \"thread_id\": \"79\", \"title\": \"sans profitable alienated by even overstay miserly practical\", \"last_updated\": \"2025-04-24\" }, { \"thread_id\": \"89\", \"title\": \"although light uh-huh despite instead vol sorrowful\", \"last_updated\": \"2025-02-16\" } ] } ``` --- ## Typical Use Cases * Show a **list of past conversations** in a chat UI * Allow users to **resume a previous thread** * Display conversation history grouped by floor * Build agent dashboards with user-specific memory --- ## Notes * This API returns **metadata only**; message history is retrieved using a separate thread-messages API * If no threads exist, the `threads` array will be empty * Thread titles may be system-generated or user-editable depending on implementation --- ## Common Error Responses (Examples) ### Missing Parameters ```json { \"status\": \"ERROR\", \"message\": \"user_id and floor_id are required\" } ``` ### Unauthorised Access ```json { \"status\": \"ERROR\", \"message\": \"Unauthorized access to conversation threads\" } ```
|
|
155
|
+
* Get the conversational threads
|
|
156
|
+
*/
|
|
157
|
+
conversationThreadsRaw(requestParameters: ConversationThreadsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ConversationThreads200Response>>;
|
|
158
|
+
/**
|
|
159
|
+
* ### Conversation Model - A **Thread** represents a single conversational context. - A **Conversation** is the ordered exchange of messages within a thread. - Threads are scoped per user and per floor. This API retrieves the list of **conversational threads** associated with a specific **user** within a specific **floor**. A **thread** represents a persistent conversation context between the user and the system (agent/assistant) inside a floor. Each thread maintains its own history and state, allowing users to resume previous conversations without losing context. The API returns **only thread metadata**, not the message content itself. This makes it suitable for: * Displaying a conversation list or sidebar * Allowing users to select and resume past conversations * Managing conversational memory per floor --- ## Key Concepts * **Thread**: A long-lived conversational context tied to a user and a floor * **Floor-scoped memory**: Conversations are isolated per floor; threads from one floor are not visible in another * **User-specific**: Threads are private to the requesting user --- ## Request Method `GET` --- ## Request Parameters (Query Parameters) | Parameter Name | Type | Required | Description | | -------------- | ------ | -------- | ---------------------------------------------------------------------------- | | `user_id` | String | **Yes** | Unique identifier of the user whose conversation threads are being requested | | `floor_id` | String | **Yes** | Identifier of the floor in which the conversations exist | --- ## Authorization & Access Rules * The caller must be authenticated as the given `user_id` * A user can retrieve **only their own threads** * Threads are scoped to the provided `floor_id` * Threads from other floors or other users are not accessible --- ## Response Format `application/json` --- ## Response Description The response contains: * The `user_id` for which threads were fetched * A list of thread metadata objects, sorted by **most recently updated first** --- ## Response Structure ### Top-Level Fields | Field | Type | Description | | --------- | ------ | ------------------------------------------------------------------------- | | `user_id` | String | Identifier of the user | | `threads` | Array | List of conversation threads belonging to the user in the specified floor | --- ### Thread Object (`threads[]`) | Field | Type | Description | | -------------- | ------------------- | ------------------------------------------------- | | `thread_id` | String | Unique identifier of the conversation thread | | `title` | String | Human-readable title summarizing the conversation | | `last_updated` | String (YYYY-MM-DD) | Date when the thread was last updated | --- ## Sample Success Response ```json { \"user_id\": \"59\", \"threads\": [ { \"thread_id\": \"55\", \"title\": \"elegant potentially hopelessly ambitious sneak\", \"last_updated\": \"2025-04-26\" }, { \"thread_id\": \"79\", \"title\": \"sans profitable alienated by even overstay miserly practical\", \"last_updated\": \"2025-04-24\" }, { \"thread_id\": \"89\", \"title\": \"although light uh-huh despite instead vol sorrowful\", \"last_updated\": \"2025-02-16\" } ] } ``` --- ## Typical Use Cases * Show a **list of past conversations** in a chat UI * Allow users to **resume a previous thread** * Display conversation history grouped by floor * Build agent dashboards with user-specific memory --- ## Notes * This API returns **metadata only**; message history is retrieved using a separate thread-messages API * If no threads exist, the `threads` array will be empty * Thread titles may be system-generated or user-editable depending on implementation --- ## Common Error Responses (Examples) ### Missing Parameters ```json { \"status\": \"ERROR\", \"message\": \"user_id and floor_id are required\" } ``` ### Unauthorised Access ```json { \"status\": \"ERROR\", \"message\": \"Unauthorized access to conversation threads\" } ```
|
|
160
|
+
* Get the conversational threads
|
|
161
|
+
*/
|
|
162
|
+
conversationThreads(requestParameters: ConversationThreadsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ConversationThreads200Response>;
|
|
163
|
+
/**
|
|
164
|
+
* This API returns the **full conversation history** for a specific **thread** belonging to a user within a floor. A **thread** represents a persistent conversation session. Each item in the returned `conversation` array contains: * The **user request payload** (user query + context) * The **assistant response payload** (full LLM completion object) * The **retrieval trace** (metadata of posts fetched/used for the answer, including scores and identifiers) This endpoint is intended for **developers** building custom conversational UIs and tooling that require: * Full conversation replay * Debug visibility into the assistant output object (`choices`, model info, etc.) * RAG explainability via `fetch_multiple_posts.results[]` --- ## Request Method `GET` --- ## Query Parameters | Parameter | Type | Required | Description | | ----------- | ------ | -------- | --------------------------------------------------------------------------- | | `user_id` | String | **Yes** | Owner of the conversation thread. The thread must belong to this user. | | `floor_id` | String | **Yes** | Floor identifier in which the thread exists. Threads are scoped to a floor. | | `thread_id` | String | **Yes** | Thread identifier whose conversations should be returned. | --- ## Authorization & Access Rules * The caller must be authenticated as the given `user_id` (or have equivalent developer/system permission). * A user can access **only their own threads**. * Cross-user or cross-floor access must be rejected. --- ## Response Format `application/json` --- ## Response Description Returns the thread-level conversation payload: * `user_id`: the user who owns the thread * `thread_id`: the requested thread * `conversation`: ordered list of conversation entries (each entry = user object + assistant object) --- ## Response Schema ### Top-Level Fields | Field | Type | Description | | -------------- | ------ | ---------------------------- | | `user_id` | String | Owner of the thread | | `thread_id` | String | Thread identifier | | `conversation` | Array | List of conversation entries | --- ## `conversation[]` Entry Structure Each entry contains two objects: `user` and `assistant`. --- ### `user` Object | Field | Type | Description | | ------------------ | ------ | ------------------------------------------------------------------- | | `context` | Object | Context used when processing the query (floor metadata, mode, etc.) | | `user_query` | String | The user’s query message | | `user_id` | String | User identifier (should match top-level `user_id`) | | `user_thread` | String | Thread identifier (should match top-level `thread_id`) | | `recorded_content` | String | Persisted user content (often same as `user_query`) | #### `user.context` | Field | Type | Description | | ---------------- | ------ | ---------------------------------------------- | | `floor_id` | String | Floor UID/slug where the conversation occurred | | `title` | String | Floor title at the time of the query | | `fid` | String | Immutable internal floor ID | | `floor_category` | String | Floor category identifier | | `floor_mode` | String | Floor mode indicator (example: `\"1\"`) | --- ### `assistant` Object This contains the **full completion response** plus retrieval details. | Field | Type | Description | | ---------------------- | ------ | --------------------------------------------------- | | `id` | String | Completion id (e.g., `chatcmpl-*`) | | `object` | String | Response type (e.g., `chat.completion`) | | `created` | Number | Timestamp when response was created (epoch seconds) | | `floor_mode` | String | Floor mode applied for generation | | `model` | String | Model identifier used | | `choices` | Array | Generated outputs and metadata | | `fetch_multiple_posts` | Object | Retrieval trace (if retrieval was performed) | | `content_type` | String | Retrieved content type (e.g., `post`) | --- ## `assistant.choices[]` | Field | Type | Description | | ------------------ | ------ | -------------------------------------------------------------------------- | | `index` | Number | Choice index | | `message` | Object | Assistant message content | | `finish_reason` | String | Why generation stopped (`stop`, `length`, etc.) | | `ai_model_details` | Object | Model runtime parameters (temperature, top_p, max_tokens, penalties, etc.) | | `prompt_details` | Object | Prompt configuration used (system prompt, system_prompt_id, etc.) | > **Note:** `prompt_details.system_prompt` may be large and is returned as-is for developer inspection. --- ## `assistant.fetch_multiple_posts` Describes the retrieval operation performed for the query. | Field | Type | Description | | -------------- | ------ | -------------------------------------- | | `content_type` | String | Type of retrieved content (`post`) | | `query` | String | Query used for retrieval | | `status` | String | Retrieval status (`success`, `failed`) | | `message` | String | Retrieval message | | `results` | Array | List of matched posts and metadata | --- ## `assistant.fetch_multiple_posts.results[]` | Field | Type | Description | | ------------ | ------ | ----------------------------------------------------------------- | | `from_floor` | String | Indicates source floor relation (e.g., same floor / linked floor) | | `content` | String | Raw JSON string of the matched post metadata/content | | `author` | String | Author id of the matched post | | `block_type` | Number | Block type of the matched post | | `pid` | String | Post/document id | | `bid` | String | Block id containing the post | | `fid` | String | Floor internal id where the post belongs | | `score` | Number | Similarity score | | `match_type` | String | Match type (`text`, etc.) | --- ## Sample Success Response Your provided payload is the canonical example. It includes: * the user query and floor context * the full assistant completion object * the full retrieval results with post metadata * the response shown covers a few important items. --- ## Common Error Responses ### Missing Parameters ```json { \"status\": \"ERROR\", \"message\": \"user_id, floor_id, and thread_id are required\" } ``` ### Unauthorized Access ```json { \"status\": \"ERROR\", \"message\": \"Unauthorized access to thread\" } ``` ### Thread Not Found ```json { \"status\": \"ERROR\", \"message\": \"Thread not found\" } ``` --- ## Developer Notes (Important) * The `content` field inside retrieval results is a **stringified JSON**. Developers may parse it to access fields such as `post_title`, `post_details`, etc. * `choices` may contain multiple outputs depending on backend configuration. * This API returns a “full debug payload” suitable for developers. If you later create a lightweight UI endpoint, it should strip execution details and return only `user_query`, `assistant.content`, and curated post references.
|
|
165
|
+
* Conversations
|
|
166
|
+
*/
|
|
167
|
+
getConversationsRaw(requestParameters: GetConversationsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetConversations200Response>>;
|
|
168
|
+
/**
|
|
169
|
+
* This API returns the **full conversation history** for a specific **thread** belonging to a user within a floor. A **thread** represents a persistent conversation session. Each item in the returned `conversation` array contains: * The **user request payload** (user query + context) * The **assistant response payload** (full LLM completion object) * The **retrieval trace** (metadata of posts fetched/used for the answer, including scores and identifiers) This endpoint is intended for **developers** building custom conversational UIs and tooling that require: * Full conversation replay * Debug visibility into the assistant output object (`choices`, model info, etc.) * RAG explainability via `fetch_multiple_posts.results[]` --- ## Request Method `GET` --- ## Query Parameters | Parameter | Type | Required | Description | | ----------- | ------ | -------- | --------------------------------------------------------------------------- | | `user_id` | String | **Yes** | Owner of the conversation thread. The thread must belong to this user. | | `floor_id` | String | **Yes** | Floor identifier in which the thread exists. Threads are scoped to a floor. | | `thread_id` | String | **Yes** | Thread identifier whose conversations should be returned. | --- ## Authorization & Access Rules * The caller must be authenticated as the given `user_id` (or have equivalent developer/system permission). * A user can access **only their own threads**. * Cross-user or cross-floor access must be rejected. --- ## Response Format `application/json` --- ## Response Description Returns the thread-level conversation payload: * `user_id`: the user who owns the thread * `thread_id`: the requested thread * `conversation`: ordered list of conversation entries (each entry = user object + assistant object) --- ## Response Schema ### Top-Level Fields | Field | Type | Description | | -------------- | ------ | ---------------------------- | | `user_id` | String | Owner of the thread | | `thread_id` | String | Thread identifier | | `conversation` | Array | List of conversation entries | --- ## `conversation[]` Entry Structure Each entry contains two objects: `user` and `assistant`. --- ### `user` Object | Field | Type | Description | | ------------------ | ------ | ------------------------------------------------------------------- | | `context` | Object | Context used when processing the query (floor metadata, mode, etc.) | | `user_query` | String | The user’s query message | | `user_id` | String | User identifier (should match top-level `user_id`) | | `user_thread` | String | Thread identifier (should match top-level `thread_id`) | | `recorded_content` | String | Persisted user content (often same as `user_query`) | #### `user.context` | Field | Type | Description | | ---------------- | ------ | ---------------------------------------------- | | `floor_id` | String | Floor UID/slug where the conversation occurred | | `title` | String | Floor title at the time of the query | | `fid` | String | Immutable internal floor ID | | `floor_category` | String | Floor category identifier | | `floor_mode` | String | Floor mode indicator (example: `\"1\"`) | --- ### `assistant` Object This contains the **full completion response** plus retrieval details. | Field | Type | Description | | ---------------------- | ------ | --------------------------------------------------- | | `id` | String | Completion id (e.g., `chatcmpl-*`) | | `object` | String | Response type (e.g., `chat.completion`) | | `created` | Number | Timestamp when response was created (epoch seconds) | | `floor_mode` | String | Floor mode applied for generation | | `model` | String | Model identifier used | | `choices` | Array | Generated outputs and metadata | | `fetch_multiple_posts` | Object | Retrieval trace (if retrieval was performed) | | `content_type` | String | Retrieved content type (e.g., `post`) | --- ## `assistant.choices[]` | Field | Type | Description | | ------------------ | ------ | -------------------------------------------------------------------------- | | `index` | Number | Choice index | | `message` | Object | Assistant message content | | `finish_reason` | String | Why generation stopped (`stop`, `length`, etc.) | | `ai_model_details` | Object | Model runtime parameters (temperature, top_p, max_tokens, penalties, etc.) | | `prompt_details` | Object | Prompt configuration used (system prompt, system_prompt_id, etc.) | > **Note:** `prompt_details.system_prompt` may be large and is returned as-is for developer inspection. --- ## `assistant.fetch_multiple_posts` Describes the retrieval operation performed for the query. | Field | Type | Description | | -------------- | ------ | -------------------------------------- | | `content_type` | String | Type of retrieved content (`post`) | | `query` | String | Query used for retrieval | | `status` | String | Retrieval status (`success`, `failed`) | | `message` | String | Retrieval message | | `results` | Array | List of matched posts and metadata | --- ## `assistant.fetch_multiple_posts.results[]` | Field | Type | Description | | ------------ | ------ | ----------------------------------------------------------------- | | `from_floor` | String | Indicates source floor relation (e.g., same floor / linked floor) | | `content` | String | Raw JSON string of the matched post metadata/content | | `author` | String | Author id of the matched post | | `block_type` | Number | Block type of the matched post | | `pid` | String | Post/document id | | `bid` | String | Block id containing the post | | `fid` | String | Floor internal id where the post belongs | | `score` | Number | Similarity score | | `match_type` | String | Match type (`text`, etc.) | --- ## Sample Success Response Your provided payload is the canonical example. It includes: * the user query and floor context * the full assistant completion object * the full retrieval results with post metadata * the response shown covers a few important items. --- ## Common Error Responses ### Missing Parameters ```json { \"status\": \"ERROR\", \"message\": \"user_id, floor_id, and thread_id are required\" } ``` ### Unauthorized Access ```json { \"status\": \"ERROR\", \"message\": \"Unauthorized access to thread\" } ``` ### Thread Not Found ```json { \"status\": \"ERROR\", \"message\": \"Thread not found\" } ``` --- ## Developer Notes (Important) * The `content` field inside retrieval results is a **stringified JSON**. Developers may parse it to access fields such as `post_title`, `post_details`, etc. * `choices` may contain multiple outputs depending on backend configuration. * This API returns a “full debug payload” suitable for developers. If you later create a lightweight UI endpoint, it should strip execution details and return only `user_query`, `assistant.content`, and curated post references.
|
|
170
|
+
* Conversations
|
|
171
|
+
*/
|
|
172
|
+
getConversations(requestParameters?: GetConversationsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetConversations200Response>;
|
|
110
173
|
/**
|
|
111
174
|
* This API changes a floor’s visibility to **PRIVATE**. It is used when a floor owner wants to **restrict access** to a floor that is currently public. After the update, the floor becomes private and is no longer accessible to non-authorized users (based on your platform’s access rules). This endpoint is **state-changing**: * If the floor is **PUBLIC**, it will be converted to **PRIVATE** * If the floor is already **PRIVATE**, the API returns success (idempotent) or an “already private” response depending on implementation This API is commonly used in: * Floor settings → “Privacy” toggle * Developer-managed pod workflows (app_id context) * Admin tools (if applicable) --- ## Request Method `POST` --- ## Content-Type `application/x-www-form-urlencoded` (or `multipart/form-data` if your system uses form-data) *(Document whichever you actually accept; below assumes standard form fields.)* --- ## Request Parameters (Form Fields) | Field | Type | Required | Description | | ---------- | ------ | -------- | -------------------------------------------------------------------- | | `user_id` | String | **Yes** | User requesting the change. Must be the **owner** of the floor. | | `floor_id` | String | **Yes** | Public identifier of the floor to update. | | `app_id` | String | No | Calling application identifier (used for developer/pod integration). | --- ## Authorization Rules (Critical) * The caller must be authenticated as `user_id` * **Only the floor owner** can change floor visibility * If the user is not the owner, the request must be rejected --- ## Behavior Rules * Converts visibility from **PUBLIC → PRIVATE** * Does not modify floor content or blocks * Access enforcement for private floors is applied immediately after the change **Idempotency** * Calling this API multiple times should not cause repeated changes * If already private, the API should either: * return success with a message like `\"already private\"`, or * return a specific error/status indicating no-op --- ## Response Format `application/json` --- ## Sample Success Response *(Example — adjust to match your actual response format)* ```json { \"status\": \"SUCCESS\", \"floor_id\": \"my_floor\", \"visibility\": \"PRIVATE\", \"message\": \"Floor is now private\" } ``` --- ## Sample No-Op Response (Already Private) ```json { \"status\": \"SUCCESS\", \"floor_id\": \"my_floor\", \"visibility\": \"PRIVATE\", \"message\": \"Floor is already private\" } ``` --- ## Error Responses (Examples) ### Not Authorized (Not Owner) ```json { \"status\": \"ERROR\", \"message\": \"Only the floor owner can change floor visibility\" } ``` ### Floor Not Found ```json { \"status\": \"ERROR\", \"message\": \"Floor not found\" } ``` ### Invalid Request ```json { \"status\": \"ERROR\", \"message\": \"user_id and floor_id are required\" } ``` --- ## Notes * This API is intended to control floor visibility only; membership/invite rules (for private floors) are handled elsewhere. * `app_id` is provided for developer/pod applications and is optional unless enforced by your app model. * If you support floor types like `POD`, document whether pods are allowed to be private or not (some platforms restrict this).
|
|
112
175
|
* Make floor Private
|
|
@@ -116,7 +179,7 @@ export declare class DefaultApi extends runtime.BaseAPI {
|
|
|
116
179
|
* This API changes a floor’s visibility to **PRIVATE**. It is used when a floor owner wants to **restrict access** to a floor that is currently public. After the update, the floor becomes private and is no longer accessible to non-authorized users (based on your platform’s access rules). This endpoint is **state-changing**: * If the floor is **PUBLIC**, it will be converted to **PRIVATE** * If the floor is already **PRIVATE**, the API returns success (idempotent) or an “already private” response depending on implementation This API is commonly used in: * Floor settings → “Privacy” toggle * Developer-managed pod workflows (app_id context) * Admin tools (if applicable) --- ## Request Method `POST` --- ## Content-Type `application/x-www-form-urlencoded` (or `multipart/form-data` if your system uses form-data) *(Document whichever you actually accept; below assumes standard form fields.)* --- ## Request Parameters (Form Fields) | Field | Type | Required | Description | | ---------- | ------ | -------- | -------------------------------------------------------------------- | | `user_id` | String | **Yes** | User requesting the change. Must be the **owner** of the floor. | | `floor_id` | String | **Yes** | Public identifier of the floor to update. | | `app_id` | String | No | Calling application identifier (used for developer/pod integration). | --- ## Authorization Rules (Critical) * The caller must be authenticated as `user_id` * **Only the floor owner** can change floor visibility * If the user is not the owner, the request must be rejected --- ## Behavior Rules * Converts visibility from **PUBLIC → PRIVATE** * Does not modify floor content or blocks * Access enforcement for private floors is applied immediately after the change **Idempotency** * Calling this API multiple times should not cause repeated changes * If already private, the API should either: * return success with a message like `\"already private\"`, or * return a specific error/status indicating no-op --- ## Response Format `application/json` --- ## Sample Success Response *(Example — adjust to match your actual response format)* ```json { \"status\": \"SUCCESS\", \"floor_id\": \"my_floor\", \"visibility\": \"PRIVATE\", \"message\": \"Floor is now private\" } ``` --- ## Sample No-Op Response (Already Private) ```json { \"status\": \"SUCCESS\", \"floor_id\": \"my_floor\", \"visibility\": \"PRIVATE\", \"message\": \"Floor is already private\" } ``` --- ## Error Responses (Examples) ### Not Authorized (Not Owner) ```json { \"status\": \"ERROR\", \"message\": \"Only the floor owner can change floor visibility\" } ``` ### Floor Not Found ```json { \"status\": \"ERROR\", \"message\": \"Floor not found\" } ``` ### Invalid Request ```json { \"status\": \"ERROR\", \"message\": \"user_id and floor_id are required\" } ``` --- ## Notes * This API is intended to control floor visibility only; membership/invite rules (for private floors) are handled elsewhere. * `app_id` is provided for developer/pod applications and is optional unless enforced by your app model. * If you support floor types like `POD`, document whether pods are allowed to be private or not (some platforms restrict this).
|
|
117
180
|
* Make floor Private
|
|
118
181
|
*/
|
|
119
|
-
makeFloorPrivate(requestParameters
|
|
182
|
+
makeFloorPrivate(requestParameters: MakeFloorPrivateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetFloorInformation200Response>;
|
|
120
183
|
/**
|
|
121
184
|
* This API changes a floor’s visibility to **PUBLIC**. It is used when a floor owner wants to **make a private floor accessible to everyone**. After the update, the floor becomes public and can be viewed and discovered by any user, subject to platform rules (search, feeds, pods, etc.). This endpoint performs a **visibility state transition**: * **PRIVATE → PUBLIC** * If the floor is already public, the operation is treated as **idempotent** (no state change). This API is typically used from: * Floor settings → Privacy / Visibility controls * Owner or admin tools * Developer or pod-based applications using `app_id` --- ## Request Method `POST` --- ## Content-Type `application/x-www-form-urlencoded` (or `multipart/form-data`, depending on your implementation) --- ## Request Parameters (Form Fields) | Field | Type | Required | Description | | ---------- | ------ | -------- | ------------------------------------------------------------------------------- | | `user_id` | String | **Yes** | User requesting the change. Must be the **owner** of the floor. | | `floor_id` | String | **Yes** | Public identifier of the floor whose visibility is to be changed. | | `app_id` | String | No | Identifier of the calling application (used mainly for pod/developer contexts). | --- ## Authorization Rules (Critical) * The caller must be authenticated as `user_id` * **Only the floor owner** is allowed to change the floor’s visibility * Requests from non-owners must be rejected --- ## Behavior Rules * Converts floor visibility from **PRIVATE → PUBLIC** * Does not modify floor content, blocks, or ownership * Visibility change takes effect immediately ### Idempotency * If the floor is already public, the API should: * Return success with a message indicating no change, or * Return a specific “already public” status (implementation-dependent) --- ## Response Format `application/json` --- ## Sample Success Response ```json { \"status\": \"SUCCESS\", \"floor_id\": \"my_floor\", \"visibility\": \"PUBLIC\", \"message\": \"Floor is now public\" } ``` --- ## Sample No-Op Response (Already Public) ```json { \"status\": \"SUCCESS\", \"floor_id\": \"my_floor\", \"visibility\": \"PUBLIC\", \"message\": \"Floor is already public\" } ``` --- ## Error Responses (Examples) ### Not Authorized (Not Owner) ```json { \"status\": \"ERROR\", \"message\": \"Only the floor owner can change floor visibility\" } ``` --- ### Floor Not Found ```json { \"status\": \"ERROR\", \"message\": \"Floor not found\" } ``` --- ### Invalid Request ```json { \"status\": \"ERROR\", \"message\": \"user_id and floor_id are required\" } ``` --- ## Notes for Developers * This API controls **visibility only**. Membership, invitations, and moderation rules are handled by separate APIs. * `app_id` is optional and primarily used for developer-managed or pod floors. * Clients should refresh floor metadata (e.g., via `/api/floor/info`) after a successful visibility change. --- ### Mental Model (One Line) > **This API answers: “Make this floor visible to everyone.”**
|
|
122
185
|
* Make floor public
|
|
@@ -126,7 +189,7 @@ export declare class DefaultApi extends runtime.BaseAPI {
|
|
|
126
189
|
* This API changes a floor’s visibility to **PUBLIC**. It is used when a floor owner wants to **make a private floor accessible to everyone**. After the update, the floor becomes public and can be viewed and discovered by any user, subject to platform rules (search, feeds, pods, etc.). This endpoint performs a **visibility state transition**: * **PRIVATE → PUBLIC** * If the floor is already public, the operation is treated as **idempotent** (no state change). This API is typically used from: * Floor settings → Privacy / Visibility controls * Owner or admin tools * Developer or pod-based applications using `app_id` --- ## Request Method `POST` --- ## Content-Type `application/x-www-form-urlencoded` (or `multipart/form-data`, depending on your implementation) --- ## Request Parameters (Form Fields) | Field | Type | Required | Description | | ---------- | ------ | -------- | ------------------------------------------------------------------------------- | | `user_id` | String | **Yes** | User requesting the change. Must be the **owner** of the floor. | | `floor_id` | String | **Yes** | Public identifier of the floor whose visibility is to be changed. | | `app_id` | String | No | Identifier of the calling application (used mainly for pod/developer contexts). | --- ## Authorization Rules (Critical) * The caller must be authenticated as `user_id` * **Only the floor owner** is allowed to change the floor’s visibility * Requests from non-owners must be rejected --- ## Behavior Rules * Converts floor visibility from **PRIVATE → PUBLIC** * Does not modify floor content, blocks, or ownership * Visibility change takes effect immediately ### Idempotency * If the floor is already public, the API should: * Return success with a message indicating no change, or * Return a specific “already public” status (implementation-dependent) --- ## Response Format `application/json` --- ## Sample Success Response ```json { \"status\": \"SUCCESS\", \"floor_id\": \"my_floor\", \"visibility\": \"PUBLIC\", \"message\": \"Floor is now public\" } ``` --- ## Sample No-Op Response (Already Public) ```json { \"status\": \"SUCCESS\", \"floor_id\": \"my_floor\", \"visibility\": \"PUBLIC\", \"message\": \"Floor is already public\" } ``` --- ## Error Responses (Examples) ### Not Authorized (Not Owner) ```json { \"status\": \"ERROR\", \"message\": \"Only the floor owner can change floor visibility\" } ``` --- ### Floor Not Found ```json { \"status\": \"ERROR\", \"message\": \"Floor not found\" } ``` --- ### Invalid Request ```json { \"status\": \"ERROR\", \"message\": \"user_id and floor_id are required\" } ``` --- ## Notes for Developers * This API controls **visibility only**. Membership, invitations, and moderation rules are handled by separate APIs. * `app_id` is optional and primarily used for developer-managed or pod floors. * Clients should refresh floor metadata (e.g., via `/api/floor/info`) after a successful visibility change. --- ### Mental Model (One Line) > **This API answers: “Make this floor visible to everyone.”**
|
|
127
190
|
* Make floor public
|
|
128
191
|
*/
|
|
129
|
-
makeFloorPublic(requestParameters
|
|
192
|
+
makeFloorPublic(requestParameters: MakeFloorPublicRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetFloorInformation200Response>;
|
|
130
193
|
/**
|
|
131
194
|
* This API allows a calling application to **pass externally authenticated user identity information to xfloor** after completing authentication within its own system. xfloor **does not perform authentication, credential verification, or session management** as part of this API. The calling application is fully responsible for validating the user and ensuring the correctness of the identity data provided. Upon invocation, xfloor will: * **Create a new user profile** if no matching user exists, or * **Update the existing user profile** if the user is already present. xfloor returns a unique `xfloor_user_id`, which serves as the **canonical user identifier** and must be used in all subsequent xfloor APIs, including floors, blocks, conversations, memory interactions, and analytics.
|
|
132
195
|
* External User Registration
|
|
@@ -146,7 +209,7 @@ export declare class DefaultApi extends runtime.BaseAPI {
|
|
|
146
209
|
* This API renames a floor by changing knowing the **floor identifier (floor_id)**. It allows the **floor owner** to update the public-facing floor ID (slug/handle) from an old value to a new value. This is typically used when the owner wants to rebrand, reorganize, or correct the floor’s identifier. ⚠️ **This operation affects how the floor is accessed and referenced externally**, so it must be performed carefully. --- ## Ownership & Authorization (Critical) * The caller **must be authenticated** * **Only the floor owner** is allowed to rename a floor * Members, followers, or non-owners **cannot** perform this operation * Ownership is validated internally using `user_id` > If the user is not the owner, the request must be rejected. --- ## Request Method `POST` --- ## Content-Type `application/x-www-form-urlencoded` (or equivalent form-data encoding) --- ## Request Parameters (Form Fields) | Parameter | Type | Required | Description | | --------- | ------ | -------- | ------------------------------------------------------------------------------- | | `user_id` | String | **Yes** | User requesting the rename. Must be the **owner** of the floor. | | `from` | String | **Yes** | Existing floor ID (current identifier to be renamed). | | `to` | String | **Yes** | New floor ID to assign to the floor. | | `app_id` | String | No | Identifier of the calling application (used mainly for pod/developer contexts). | --- ## Rename Rules & Constraints * The `from` floor ID **must exist** * The `to` floor ID **must be unique** and not already in use * The rename operation updates **only the floor ID** * Floor ownership, blocks, posts, and internal `fid` remain unchanged * Any links or references using the old floor ID may no longer be valid after rename --- ## Behavior Summary | Scenario | Result | | ---------------------------- | ------------------------------------------------- | | Valid owner + unique new ID | Floor ID renamed successfully | | Non-owner user | Request rejected | | `from` floor ID not found | Error | | `to` floor ID already exists | Error | | `from` == `to` | No-op or validation error (implementation choice) | --- ## Response Format `application/json` --- ## Sample Success Response ```json { \"status\": \"SUCCESS\", \"old_floor_id\": \"oldfloorid\", \"new_floor_id\": \"newfloorid\", \"message\": \"Floor ID renamed successfully\" } ``` --- ## Sample Error Responses ### Not Floor Owner ```json { \"status\": \"ERROR\", \"message\": \"Only the floor owner can rename the floor\" } ``` --- ### Floor Not Found ```json { \"status\": \"ERROR\", \"message\": \"Source floor ID does not exist\" } ``` --- ### Floor ID Already Exists ```json { \"status\": \"ERROR\", \"message\": \"Target floor ID is already in use\" } ``` --- ### Invalid Request ```json { \"status\": \"ERROR\", \"message\": \"user_id, from, and to are required\" } ``` --- ## Notes for Developers * This API **renames the public identifier only**; the internal immutable floor ID (`fid`) is not affected. * Clients should refresh cached floor metadata after a successful rename. * If your platform supports deep links or bookmarks, consider redirect or alias handling for old floor IDs (if supported). --- ### One-Line Mental Model > **This API answers: “Change the public identity (ID) of a floor, owner-only.”**
|
|
147
210
|
* Rename floor
|
|
148
211
|
*/
|
|
149
|
-
renameFloor(requestParameters
|
|
212
|
+
renameFloor(requestParameters: RenameFloorRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetFloorInformation200Response>;
|
|
150
213
|
/**
|
|
151
214
|
* --- ## Reset Password (Forgot Password, Not Logged In) Resets the password of a user who **cannot log in** and is using a **forgot-password** flow. This endpoint is used when the user is not authenticated and requests a password reset using a verified identity channel such as **email** or **mobile number**. The system validates a **one-time reset verification code** (`activation_code`) issued for the reset-password flow. If valid and not expired, the password is updated to `new_password` and takes effect immediately. If verification fails, the password remains unchanged and an error response is returned. ### Authentication ✅ **Recommended** (better security): a short-lived **reset token** issued after initiating reset ``` Authorization: Bearer <reset_token> ``` > If you don’t use a reset token, you must enforce strong rate limiting + OTP attempt throttling on this endpoint. ### Request Body (Form Data) * `email_id` or `mobile_number` (required to identify user) * `activation_code` (required) * `new_password` (required) * `user_id` (optional, if your reset flow already resolved it) ### Behavior Notes * Requires a prior call to **initiate reset** and send OTP/code (mode = forgot password). * Must enforce code attempt limits and expiration strictly. ### One-Line Summary > Resets a user’s password (forgot-password flow) after validating a one-time reset code sent to email or mobile.
|
|
152
215
|
* Reset Password
|
|
@@ -157,6 +220,16 @@ export declare class DefaultApi extends runtime.BaseAPI {
|
|
|
157
220
|
* Reset Password
|
|
158
221
|
*/
|
|
159
222
|
resetPassword(requestParameters: ResetPasswordRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ResetPassword200Response>;
|
|
223
|
+
/**
|
|
224
|
+
* This API initiates the **sign-in validation process** by sending a **one-time validation code (OTP)** to the user. The OTP is delivered to **either the mobile number or the email address** provided in the request. This endpoint is typically called **before completing sign-in**, to verify that the user owns the supplied contact identifier. The calling application is responsible for: * Collecting the OTP from the user * Submitting it to the OTP verification API (handled separately) --- ## **Use Case** * User attempts to sign in * User provides **mobile number or email** * System sends a **validation code (OTP)** * User enters OTP to complete sign-in --- ## **Request Method** `POST` --- ## **Formdata Parameters** | Parameter Name | Type | Required | Description | | --------------- | ------ | --------- | ------------------------------------------- | | `mobile_number` | String | Optional* | Mobile number to which the OTP will be sent | | `email_id` | String | Optional* | Email address to which the OTP will be sent | | `app_id` | String | Optional | Identifier of the calling application | * **Either `mobile_number` or `email_id` must be provided.** Providing both is allowed; the system may choose one based on configuration. --- ## **Request Rules** * At least **one** of `mobile_number` or `email_id` is mandatory * If both are missing, the request will be rejected * OTP delivery channel depends on the provided identifier --- ## **Response Format** `application/json` --- ## **Sample Success Response** ```json { \"status\": \"SUCCESS\", \"message\": \"Validation code sent successfully\" } ``` --- ## **Sample Error Responses** ### Missing Identifier ```json { \"status\": \"ERROR\", \"message\": \"Either mobile_number or email_id must be provided\" } ``` ### Invalid Identifier ```json { \"status\": \"ERROR\", \"message\": \"Invalid mobile number or email address\" } ``` --- ## **Notes** * This API **only sends** the validation code * OTP verification must be performed using the corresponding **verify validation code** API * Rate limiting and retry restrictions may apply to prevent abuse
|
|
225
|
+
* Send Sign-In Validation Code (OTP)
|
|
226
|
+
*/
|
|
227
|
+
sendSignInValidationCodeRaw(requestParameters: SendSignInValidationCodeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SendSignInValidationCode200Response>>;
|
|
228
|
+
/**
|
|
229
|
+
* This API initiates the **sign-in validation process** by sending a **one-time validation code (OTP)** to the user. The OTP is delivered to **either the mobile number or the email address** provided in the request. This endpoint is typically called **before completing sign-in**, to verify that the user owns the supplied contact identifier. The calling application is responsible for: * Collecting the OTP from the user * Submitting it to the OTP verification API (handled separately) --- ## **Use Case** * User attempts to sign in * User provides **mobile number or email** * System sends a **validation code (OTP)** * User enters OTP to complete sign-in --- ## **Request Method** `POST` --- ## **Formdata Parameters** | Parameter Name | Type | Required | Description | | --------------- | ------ | --------- | ------------------------------------------- | | `mobile_number` | String | Optional* | Mobile number to which the OTP will be sent | | `email_id` | String | Optional* | Email address to which the OTP will be sent | | `app_id` | String | Optional | Identifier of the calling application | * **Either `mobile_number` or `email_id` must be provided.** Providing both is allowed; the system may choose one based on configuration. --- ## **Request Rules** * At least **one** of `mobile_number` or `email_id` is mandatory * If both are missing, the request will be rejected * OTP delivery channel depends on the provided identifier --- ## **Response Format** `application/json` --- ## **Sample Success Response** ```json { \"status\": \"SUCCESS\", \"message\": \"Validation code sent successfully\" } ``` --- ## **Sample Error Responses** ### Missing Identifier ```json { \"status\": \"ERROR\", \"message\": \"Either mobile_number or email_id must be provided\" } ``` ### Invalid Identifier ```json { \"status\": \"ERROR\", \"message\": \"Invalid mobile number or email address\" } ``` --- ## **Notes** * This API **only sends** the validation code * OTP verification must be performed using the corresponding **verify validation code** API * Rate limiting and retry restrictions may apply to prevent abuse
|
|
230
|
+
* Send Sign-In Validation Code (OTP)
|
|
231
|
+
*/
|
|
232
|
+
sendSignInValidationCode(requestParameters: SendSignInValidationCodeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SendSignInValidationCode200Response>;
|
|
160
233
|
/**
|
|
161
234
|
* Generates and sends a one-time validation code to the user for verification of sensitive or critical account operations. This API is used across multiple authentication and account-management flows. The validation code is delivered to the user via the appropriate channel (**email or mobile number**), based on the requested operation mode and the input provided. The generated code is **time-bound**, **single-use**, and must be validated using the corresponding verification APIs to complete the requested action. --- ### **Usage Scenarios (Mode Definition)** | Mode | Purpose | | ---- | ----------------------------- | | `0` | Email or mobile number change | | `1` | Password change | | `2` | Delete account | | `3` | Clear account | | `4` | Signup Verification | | `5` | Using OTP for Login | | `6` | OTP for forgot password | **Mode `4` – Signup Verification** For login verification, the validation code is sent to **either the email ID or the mobile number provided in the request**. At least **one of email or mobile number must be supplied** for this mode. --- ### **Behavior** * Generates a secure, one-time validation code * Sends the code to the appropriate channel: * Email or mobile number, depending on the operation mode and input * Associates the code with: * User identity (or login identifier) * Requested operation (`mode`) * Application context (if applicable) * Validation codes are valid for a limited duration and **cannot be reused** --- ### **Authentication** This endpoint requires **Bearer Token authentication**, **except** where explicitly allowed (for example, login-related flows). ``` Authorization: Bearer <access_token> ``` --- ### **Successful Response** On success, the API confirms that the validation code has been generated and successfully dispatched to the user. --- ### **Error Response** The API returns an error response if: * The user does not exist or is not eligible for the requested operation * The requested mode is invalid or unsupported * Required identifiers (email or mobile number for login verification) are missing * Rate limits are exceeded * Authorization fails (where applicable) --- ### **Security Notes (Recommended)** * Validation codes are single-use and time-bound * Rate limiting is enforced to prevent abuse * Repeated failures may trigger temporary blocking or additional verification --- ### **One-Line Summary** > Sends a one-time validation code for secure account and authentication operations, including login via email or mobile number.
|
|
162
235
|
* Send Validation code
|