UNPKG

recombee-api-client

Version:

Node.js client (SDK) for easy use of the Recombee recommendation API

57 lines (49 loc) 2.68 kB
/* This file is auto-generated, do not edit */ 'use strict'; const rqs = require("./request"); /** * Merges interactions (purchases, ratings, bookmarks, detail views ...) of two different users under a single user ID. This is especially useful for online e-commerce applications working with anonymous users identified by unique tokens such as the session ID. In such applications, it may often happen that a user owns a persistent account, yet accesses the system anonymously while, e.g., putting items into a shopping cart. At some point in time, such as when the user wishes to confirm the purchase, (s)he logs into the system using his/her username and password. The interactions made under anonymous session ID then become connected with the persistent account, and merging these two becomes desirable. * Merging happens between two users referred to as the *target* and the *source*. After the merge, all the interactions of the source user are attributed to the target user, and the source user is **deleted**. * By default, the *Merge Users* request is only available from server-side integrations for security reasons, to prevent potential abuse. * If you need to call this request from a client-side environment (such as a web or mobile app), please contact our support and request access to enable this feature for your database. */ class MergeUsers extends rqs.Request { /** * Construct the request * @param {string} targetUserId - ID of the target user. * @param {string} sourceUserId - ID of the source user. * @param {Object} optional - Optional parameters given as an object with structure name of the parameter: value * - Allowed parameters: * - *cascadeCreate* * - Type: boolean * - Description: Sets whether the user *targetUserId* should be created if not present in the database. */ constructor(targetUserId, sourceUserId, optional) { super('PUT', `/users/${targetUserId}/merge/${sourceUserId}`, 10000, false); this.targetUserId = targetUserId; this.sourceUserId = sourceUserId; optional = optional || {}; this.cascadeCreate = optional.cascadeCreate; } /** * Get body parameters * @return {Object} The values of body parameters (name of parameter: value of the parameter) */ bodyParameters() { let params = {}; return params; } /** * Get query parameters * @return {Object} The values of query parameters (name of parameter: value of the parameter) */ queryParameters() { let params = {}; if (this.cascadeCreate !== undefined) params.cascadeCreate = this.cascadeCreate; return params; } } exports.MergeUsers = MergeUsers