@indexea/sdk
Version:
Indexea JavaScript SDK (indexea.com)
685 lines (555 loc) • 28.7 kB
text/typescript
/* tslint:disable */
/* eslint-disable */
/**
* Indexea OpenAPI
* 这是 Indexea 搜索服务平台的 OpenAPI,用于描述平台的所有接口信息,你可以通过这个页面来了解和在线验证平台的所有接口信息。 ### Errors 本 API 使用标准的 HTTP 状态码来指示操作成功或者失败,如果失败将会在 body 中以 JSON 格式提供详细的错误信息,如下所示: ``` { \"error\": 404, \"message\": \"page not found\" } ```
*
* The version of the OpenAPI document: 1.0.0
* Contact: indexea.com@gmail.com
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import * as runtime from '../runtime';
import type {
RecordFilter,
} from '../models';
import {
RecordFilterFromJSON,
RecordFilterToJSON,
} from '../models';
export interface RecordCountBeforeTimeRequest {
app: string;
index: number;
timestamp: number;
}
export interface RecordDeleteRequest {
app: string;
index: number;
id: Array<string>;
}
export interface RecordDeleteBeforeTimeRequest {
app: string;
index: number;
timestamp: number;
}
export interface RecordDeleteByQueryRequest {
app: string;
index: number;
query: number;
params?: { [key: string]: string; };
}
export interface RecordGetRequest {
app: string;
index: number;
id: string;
}
export interface RecordListRequest {
app: string;
index: number;
q?: string;
field?: string;
from?: number;
size?: number;
saveFilter?: boolean;
recordFilter?: RecordFilter;
}
export interface RecordPushRequest {
app: string;
index: number;
requestBody: Array<object>;
combine?: string;
}
export interface RecordUpdateByQueryRequest {
app: string;
index: number;
query: number;
body: object;
params?: { [key: string]: string; };
}
export interface RecordUploadRequest {
app: string;
index: number;
combine?: boolean;
useIdAsIdValue?: boolean;
files?: Array<Blob>;
}
export interface RecordUploadOldRequest {
app: string;
index: number;
combine?: boolean;
useIdAsIdValue?: boolean;
files?: Array<Blob>;
}
/**
*
*/
export class RecordsApi extends runtime.BaseAPI {
/**
* 通过 timestamp 参数获取指定时间之前的记录数。
* 查询指定时间之前的日志数据记录数
*/
async recordCountBeforeTimeRaw(requestParameters: RecordCountBeforeTimeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<object>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling recordCountBeforeTime.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling recordCountBeforeTime.');
}
if (requestParameters.timestamp === null || requestParameters.timestamp === undefined) {
throw new runtime.RequiredError('timestamp','Required parameter requestParameters.timestamp was null or undefined when calling recordCountBeforeTime.');
}
const queryParameters: any = {};
if (requestParameters.timestamp !== undefined) {
queryParameters['timestamp'] = requestParameters.timestamp;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/records/{app}/{index}/before-time`.replace(`{${"app"}}`, encodeURIComponent(String(requestParameters.app))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse<any>(response);
}
/**
* 通过 timestamp 参数获取指定时间之前的记录数。
* 查询指定时间之前的日志数据记录数
*/
async recordCountBeforeTime(requestParameters: RecordCountBeforeTimeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<object> {
const response = await this.recordCountBeforeTimeRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 删除记录数据
*/
async recordDeleteRaw(requestParameters: RecordDeleteRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<boolean>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling recordDelete.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling recordDelete.');
}
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling recordDelete.');
}
const queryParameters: any = {};
if (requestParameters.id) {
queryParameters['_id'] = requestParameters.id;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/records/{app}/{index}`.replace(`{${"app"}}`, encodeURIComponent(String(requestParameters.app))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.TextApiResponse(response) as any;
}
/**
* 删除记录数据
*/
async recordDelete(requestParameters: RecordDeleteRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<boolean> {
const response = await this.recordDeleteRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 通过 timestamp 参数删除指定时间之前的记录(该参数仅用于日志索引数据的删除),该操作要求管理员权限。
* 删除指定时间之前的日志数据
*/
async recordDeleteBeforeTimeRaw(requestParameters: RecordDeleteBeforeTimeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<boolean>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling recordDeleteBeforeTime.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling recordDeleteBeforeTime.');
}
if (requestParameters.timestamp === null || requestParameters.timestamp === undefined) {
throw new runtime.RequiredError('timestamp','Required parameter requestParameters.timestamp was null or undefined when calling recordDeleteBeforeTime.');
}
const queryParameters: any = {};
if (requestParameters.timestamp !== undefined) {
queryParameters['timestamp'] = requestParameters.timestamp;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/records/{app}/{index}/before-time`.replace(`{${"app"}}`, encodeURIComponent(String(requestParameters.app))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.TextApiResponse(response) as any;
}
/**
* 通过 timestamp 参数删除指定时间之前的记录(该参数仅用于日志索引数据的删除),该操作要求管理员权限。
* 删除指定时间之前的日志数据
*/
async recordDeleteBeforeTime(requestParameters: RecordDeleteBeforeTimeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<boolean> {
const response = await this.recordDeleteBeforeTimeRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 批量删除记录数据(delete_by_query),该接口传递查询参数获取要删除的记录并逐一删除
*/
async recordDeleteByQueryRaw(requestParameters: RecordDeleteByQueryRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling recordDeleteByQuery.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling recordDeleteByQuery.');
}
if (requestParameters.query === null || requestParameters.query === undefined) {
throw new runtime.RequiredError('query','Required parameter requestParameters.query was null or undefined when calling recordDeleteByQuery.');
}
const queryParameters: any = {};
if (requestParameters.query !== undefined) {
queryParameters['query'] = requestParameters.query;
}
if (requestParameters.params !== undefined) {
queryParameters['params'] = requestParameters.params;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/records/{app}/{index}/bulk`.replace(`{${"app"}}`, encodeURIComponent(String(requestParameters.app))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* 批量删除记录数据(delete_by_query),该接口传递查询参数获取要删除的记录并逐一删除
*/
async recordDeleteByQuery(requestParameters: RecordDeleteByQueryRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.recordDeleteByQueryRaw(requestParameters, initOverrides);
}
/**
* 获取单条记录详情
*/
async recordGetRaw(requestParameters: RecordGetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<object>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling recordGet.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling recordGet.');
}
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling recordGet.');
}
const queryParameters: any = {};
if (requestParameters.id !== undefined) {
queryParameters['_id'] = requestParameters.id;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/records/{app}/{index}`.replace(`{${"app"}}`, encodeURIComponent(String(requestParameters.app))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse<any>(response);
}
/**
* 获取单条记录详情
*/
async recordGet(requestParameters: RecordGetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<object> {
const response = await this.recordGetRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 获取索引记录列表
*/
async recordListRaw(requestParameters: RecordListRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<object>>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling recordList.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling recordList.');
}
const queryParameters: any = {};
if (requestParameters.q !== undefined) {
queryParameters['q'] = requestParameters.q;
}
if (requestParameters.field !== undefined) {
queryParameters['field'] = requestParameters.field;
}
if (requestParameters.from !== undefined) {
queryParameters['from'] = requestParameters.from;
}
if (requestParameters.size !== undefined) {
queryParameters['size'] = requestParameters.size;
}
if (requestParameters.saveFilter !== undefined) {
queryParameters['saveFilter'] = requestParameters.saveFilter;
}
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/json';
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/records/{app}/{index}`.replace(`{${"app"}}`, encodeURIComponent(String(requestParameters.app))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: RecordFilterToJSON(requestParameters.recordFilter),
}, initOverrides);
return new runtime.JSONApiResponse<any>(response);
}
/**
* 获取索引记录列表
*/
async recordList(requestParameters: RecordListRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<object>> {
const response = await this.recordListRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 插入或者更新索引数据
*/
async recordPushRaw(requestParameters: RecordPushRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<boolean>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling recordPush.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling recordPush.');
}
if (requestParameters.requestBody === null || requestParameters.requestBody === undefined) {
throw new runtime.RequiredError('requestBody','Required parameter requestParameters.requestBody was null or undefined when calling recordPush.');
}
const queryParameters: any = {};
if (requestParameters.combine !== undefined) {
queryParameters['combine'] = requestParameters.combine;
}
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/json';
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/records/{app}/{index}`.replace(`{${"app"}}`, encodeURIComponent(String(requestParameters.app))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
method: 'PUT',
headers: headerParameters,
query: queryParameters,
body: requestParameters.requestBody,
}, initOverrides);
return new runtime.TextApiResponse(response) as any;
}
/**
* 插入或者更新索引数据
*/
async recordPush(requestParameters: RecordPushRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<boolean> {
const response = await this.recordPushRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 批量修改记录数据(update_by_query),该接口传递查询参数获取要更新的记录,并使用 body 中的对象进行记录合并更新
*/
async recordUpdateByQueryRaw(requestParameters: RecordUpdateByQueryRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling recordUpdateByQuery.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling recordUpdateByQuery.');
}
if (requestParameters.query === null || requestParameters.query === undefined) {
throw new runtime.RequiredError('query','Required parameter requestParameters.query was null or undefined when calling recordUpdateByQuery.');
}
if (requestParameters.body === null || requestParameters.body === undefined) {
throw new runtime.RequiredError('body','Required parameter requestParameters.body was null or undefined when calling recordUpdateByQuery.');
}
const queryParameters: any = {};
if (requestParameters.query !== undefined) {
queryParameters['query'] = requestParameters.query;
}
if (requestParameters.params !== undefined) {
queryParameters['params'] = requestParameters.params;
}
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/json';
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/records/{app}/{index}/bulk`.replace(`{${"app"}}`, encodeURIComponent(String(requestParameters.app))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
method: 'PATCH',
headers: headerParameters,
query: queryParameters,
body: requestParameters.body as any,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* 批量修改记录数据(update_by_query),该接口传递查询参数获取要更新的记录,并使用 body 中的对象进行记录合并更新
*/
async recordUpdateByQuery(requestParameters: RecordUpdateByQueryRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.recordUpdateByQueryRaw(requestParameters, initOverrides);
}
/**
* 上传记录
*/
async recordUploadRaw(requestParameters: RecordUploadRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<object>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling recordUpload.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling recordUpload.');
}
const queryParameters: any = {};
if (requestParameters.combine !== undefined) {
queryParameters['combine'] = requestParameters.combine;
}
if (requestParameters.useIdAsIdValue !== undefined) {
queryParameters['useIdAsIdValue'] = requestParameters.useIdAsIdValue;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const consumes: runtime.Consume[] = [
{ contentType: 'multipart/form-data' },
];
// @ts-ignore: canConsumeForm may be unused
const canConsumeForm = runtime.canConsumeForm(consumes);
let formParams: { append(param: string, value: any): any };
let useForm = false;
// use FormData to transmit files using content-type "multipart/form-data"
useForm = canConsumeForm;
if (useForm) {
formParams = new FormData();
} else {
formParams = new URLSearchParams();
}
if (requestParameters.files) {
requestParameters.files.forEach((element) => {
formParams.append('files', element as any);
})
}
const response = await this.request({
path: `/records/{app}/{index}/bulk`.replace(`{${"app"}}`, encodeURIComponent(String(requestParameters.app))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: formParams,
}, initOverrides);
return new runtime.JSONApiResponse<any>(response);
}
/**
* 上传记录
*/
async recordUpload(requestParameters: RecordUploadRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<object> {
const response = await this.recordUploadRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 上传记录,该接口已经废弃,请使用 /records/{app}/{index}/bulk 接口
*/
async recordUploadOldRaw(requestParameters: RecordUploadOldRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<object>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling recordUploadOld.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling recordUploadOld.');
}
const queryParameters: any = {};
if (requestParameters.combine !== undefined) {
queryParameters['combine'] = requestParameters.combine;
}
if (requestParameters.useIdAsIdValue !== undefined) {
queryParameters['useIdAsIdValue'] = requestParameters.useIdAsIdValue;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const consumes: runtime.Consume[] = [
{ contentType: 'multipart/form-data' },
];
// @ts-ignore: canConsumeForm may be unused
const canConsumeForm = runtime.canConsumeForm(consumes);
let formParams: { append(param: string, value: any): any };
let useForm = false;
// use FormData to transmit files using content-type "multipart/form-data"
useForm = canConsumeForm;
if (useForm) {
formParams = new FormData();
} else {
formParams = new URLSearchParams();
}
if (requestParameters.files) {
requestParameters.files.forEach((element) => {
formParams.append('files', element as any);
})
}
const response = await this.request({
path: `/records/{app}/{index}/upload`.replace(`{${"app"}}`, encodeURIComponent(String(requestParameters.app))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: formParams,
}, initOverrides);
return new runtime.JSONApiResponse<any>(response);
}
/**
* 上传记录,该接口已经废弃,请使用 /records/{app}/{index}/bulk 接口
*/
async recordUploadOld(requestParameters: RecordUploadOldRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<object> {
const response = await this.recordUploadOldRaw(requestParameters, initOverrides);
return await response.value();
}
}