UNPKG

@coveo/platform-client

Version:

The main goal of this package is to provide an easy to configure and straightforward way of querying Coveo Cloud APIs using JavaScript.

71 lines 3.57 kB
import Resource from '../../Resource.js'; export default class ResultRankings extends Resource { static getBaseUrl = (pipelineId) => `/rest/search/v2/admin/pipelines/${pipelineId}/resultRankings`; static getResultRankingsUrl = (pipelineId, resultRankingsId) => `${ResultRankings.getBaseUrl(pipelineId)}/${resultRankingsId}`; delete(pipelineId, resultRankingsId) { return this.api.delete(this.buildPath(ResultRankings.getResultRankingsUrl(pipelineId, resultRankingsId), { organizationId: this.api.organizationId, })); } get(pipelineId, resultRankingsId) { return this.api.get(this.buildPath(ResultRankings.getResultRankingsUrl(pipelineId, resultRankingsId), { organizationId: this.api.organizationId, })); } update(pipelineId, resultRankingsId, resultRanking) { return this.api.put(this.buildPath(ResultRankings.getResultRankingsUrl(pipelineId, resultRankingsId), { organizationId: this.api.organizationId, }), resultRanking); } updateJSON(pipelineId, resultRankingsId, resultRanking) { return this.api.put(this.buildPath(ResultRankings.getResultRankingsUrl(pipelineId, resultRankingsId), { organizationId: this.api.organizationId, }), undefined, { body: resultRanking, headers: { 'Content-Type': 'application/json' } }); } list(pipelineId, params) { return this.api.get(this.buildPath(ResultRankings.getBaseUrl(pipelineId), { organizationId: this.api.organizationId, ...params, associatedGroups: JSON.stringify(params?.associatedGroups), ruleStatuses: JSON.stringify(params?.ruleStatuses), ruleTypes: JSON.stringify(params?.ruleTypes), })); } create(pipelineId, resultRanking) { return this.api.post(this.buildPath(ResultRankings.getBaseUrl(pipelineId), { organizationId: this.api.organizationId, }), resultRanking); } createJSON(pipelineId, resultRanking) { return this.api.post(this.buildPath(ResultRankings.getBaseUrl(pipelineId), { organizationId: this.api.organizationId, }), undefined, { body: resultRanking, headers: { 'Content-Type': 'application/json' } }); } duplicate(pipelineId, resultRankingsId) { return this.api.post(this.buildPath(`${ResultRankings.getBaseUrl(pipelineId)}/duplicate/${resultRankingsId}`, { organizationId: this.api.organizationId, })); } copyTo(pipelineId, copyResultRankingRequest) { return this.api.post(this.buildPath(`${ResultRankings.getBaseUrl(pipelineId)}/copy`, { organizationId: this.api.organizationId, }), copyResultRankingRequest); } bulkGet(pipelineId, { ids, ...allQueryStringOptions }) { return this.api.post(this.buildPath(`${ResultRankings.getBaseUrl(pipelineId)}/bulkGet`, { organizationId: this.api.organizationId, ...allQueryStringOptions, }), { ids }); } /** * Delete multiple result rankings rules in batch for a specific pipeline. * @param pipelineId The unique identifier of the target query pipeline. * @param ids A list of result ranking rule identifiers to delete. A maximum of 100 can be sent. */ bulkDelete(pipelineId, ids) { return this.api.post(this.buildPath(`${ResultRankings.getBaseUrl(pipelineId)}/bulkDelete`, { organizationId: this.api.organizationId, }), { ids }); } } //# sourceMappingURL=ResultRankings.js.map