Easy Integration
Recombee makes integration a breeze with its well-structured REST API and SDKs. Coupled with tools like catalog feed processing, low-code HTML widgets, and pre-built integrations with platforms like Segment, we streamline the entire integration process for your development teams.
SDKs
Take advantage of SDKs available in multiple programming languages, supporting server-side, client-side, and hybrid integrations.
Recombee offers SDKs in multiple programming languages, ensuring effortless implementation and maintenance for both server-side and client-side integrations, or a combination of both.
const client = new recombee.ApiClient('database-id', dbPublicToken);
// Send a view of item 'item_x' by user 'user_42'
client.send(new recombee.AddDetailView('user_42', 'item_x'));
// Get 5 recommended items for user 'user_42'. Recommend only items which haven't expired yet.
const recommended = await client.send(
new recombee.RecommendItemsToUser('user_42', 5, {filter: "'expires' > now()"})
);
client = RecombeeClient.new('database-id', secret_token)
# Send a view of item 'item_x' by user 'user_42'. Create user and/or item if it doesn't exist yet.
client.send(AddDetailView.new('user_42', 'item_x', 'cascadeCreate' => true))
# Get 5 recommended items for user 'user_42'. Recommend only items which haven't expired yet.
recommended = client.send(RecommendItemsToUser.new('user_42', 5, 'filter' => "'expires' > now()"))
RecombeeClient client = new RecombeeClient("database-id", secretToken);
// Send a view of item "item_x" by user "user_42". Create user and/or item if it doesn't exist yet.
client.send(new AddDetailView("user_42", "item_x").setCascadeCreate(true));
// Get 5 recommended items for user "user_42". Recommend only items which haven't expired yet.
RecommendationResponse recommended = client.send(
new RecommendItemsToUser("user_42", 5).setFilter("'expires' > now()")
);
client = RecombeeClient('database-id', secret_token)
# Send a view of item 'item_x' by user 'user_42'. Create user and/or item if it doesn't exist yet.
client.send(AddDetailView('user_42', 'item_x', cascade_create=True))
# Get 5 recommended items for user 'user_42'. Recommend only items which haven't expired yet.
recommended = client.send(RecommendItemsToUser('user_42', 5, filter="'expires' > now()"))
const client = new recombee.ApiClient('database-id', secretToken);
// Send a view of item 'item_x' by user 'user_42'. Create user and/or item if it doesn't exist yet.
client.send(new rqs.AddDetailView('user_42', 'item_x', {cascadeCreate: true}), callback);
// Get 5 recommended items for user 'user_42'. Recommend only items which haven't expired yet.
const recommended = await client.send(
new rqs.RecommendItemsToUser('user_42', 5, {filter: "'expires' > now()"})
); // Supports both Promises and callbacks
val client = RecombeeClient(databaseId = "yourDatabaseId", publicToken = dbPublicToken,)
// Send a view of item 'item_x' by user 'user_42'
client.send(AddDetailView("user_42", "item_x"));
// Get 5 recommended items for user 'user_42'. Recommend only items which haven't expired yet.
val result = client.sendAsync(RecommendItemsToUser("user_42", count = 5, filter = "'expires' > now()"))
result.onSuccess { response: RecommendationResponse ->
// Show recommendations
}
$client = new Client('database-id', $secret_token);
// Send a view of item 'item_x' by user 'user_42'. Create user and/or item if it doesn't exist yet.
$client->send(new Reqs\AddDetailView('user_42', 'item_x', ['cascadeCreate' => true]));
// Get 5 recommended items for user 'user_42'. Recommend only items which haven't expired yet.
$recommended = $client->send(new Reqs\RecommendItemsToUser('user_42', 5, ['filter' => "'expires' > now()"]));
var client = new RecombeeClient("database_id", secretToken);
// Send a view of item "item_x" by user "user_42". Create user and/or item if it doesn't exist yet.
client.Send(new AddDetailView("user_42", "item_x", cascadeCreate: true));
// Get 5 recommended items for user 'user_42'. Recommend only items which haven't expired yet.
var recommended = client.Send(new RecommendItemsToUser("user_42", 5, filter: "'expires' > now()"));
client, _ := recombee.NewRecombeeClient("databaseId", secretToken)
// Send a view of item 'item_x' by user 'user_42', creating user/item if they don't exist
client.NewAddDetailView("user_42", "item_x").SetCascadeCreate(true).Send()
// Get 5 recommended items for user 'user_42', filtering out expired items
recommendRes, _ := client.NewRecommendItemsToUser("user_42", 5).SetFilter("'expires' > now()").Send()
// Print recommended item IDs
for _, rec := range recommendRes.Recomms {
fmt.Println(rec.Id)
}
# Send a view of item 'item_x' by user 'user_id'. Create user and/or item if it doesn't exist yet.
POST http://rapi.recombee.com/database_id/detailviews/
Data: {'userId': 'user_42', 'itemId': 'item_x', 'cascadeCreate': true}
# Get 5 recommended items for user 'user_42'.
# Recommend only items which haven't expired yet (filter: 'expires' > now()).
GET http://rapi.recombee.com/database_id/recomms/users/user_42/items/?count=5&filter=%27expires%27%3Enow()
Catalog Feeds
Catalog synchronization with Recombee can be achieved through the API or by using catalog feeds.
Popular formats like Google Merchant feed, RSS feed, custom XML, CSV, and JSON are supported out of the box. Plus, feed processing settings are easy to configure directly in the Recombee Admin UI.
Read Catalog Feeds Documentation
HTML Widgets
For those seeking a low-code option, Recombee provides an intuitive way to integrate recommendations and search functionality directly into your website.
Our "WYSIWYG (What You See Is What You Get)" editor in the Recombee Admin UI allows you to design and customize widgets to fit both desktop and mobile layouts.
Available Widget Types
Once you've configured your widget, deployment is straightforward: simply copy the provided embed code and paste it into your website. Whether for recommendations or a search box, the widget will seamlessly integrate into your site.
You can also enhance its appearance further by applying your own CSS for a perfect match with your website’s style.
Read HTML Widgets Documentation
Support
Documentation: Recombee offers comprehensive public documentation to assist with your integration and usage needs.
Email Support: For any questions or further clarification, our skilled support team is readily available at support@recombee.com.
Video Calls and Slack Support: Available exclusively for Pro and Premium plans, our team is just a video call or Slack message away, offering tailored support and guidance.