This is documentation for v3 of the PHP API clients, which is not the latest version. To see the documentation for the latest version, see PHP v4.

This is documentation for v2 of the Ruby API clients, which is not the latest version. To see the documentation for the latest version, see Ruby v3.

This is documentation for v4 of the JavaScript API clients, which is not the latest version. To see the documentation for the latest version, see JavaScript v5.

This is documentation for v3 of the Python API clients, which is not the latest version. To see the documentation for the latest version, see Python v4.

This is documentation for v8 of the Swift API clients, which is not the latest version. To see the documentation for the latest version, see Swift v9.

This is documentation for v2 of the Kotlin API clients, which is not the latest version. To see the documentation for the latest version, see Kotlin v3.

This is documentation for v6 of the C# API clients, which is not the latest version. To see the documentation for the latest version, see C# v7.

This is documentation for v3 of the Java API clients, which is not the latest version. To see the documentation for the latest version, see Java v4.

This is documentation for v3 of the Go API clients, which is not the latest version. To see the documentation for the latest version, see Go v4.

This is documentation for v1 of the Scala API clients, which is not the latest version. To see the documentation for the latest version, see Scala v2.

Required API Key: any key with the editSettings ACL

Method signature
$client->setPersonalizationStrategy(array strategy)

You’re currently reading the JavaScript API client v4 documentation. Check the migration guide to learn how to upgrade from v3 to v4. You can still access the v3 documentation.

You’re currently reading the Ruby API client v2 documentation. Check the migration guide to learn how to upgrade from v1 to v2. You can still access the v1 documentation.

About this method

Set a personalization strategy.

Examples

Read the Algolia CLI documentation for more information.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
$recommendation->setPersonalizationStrategy([
    'eventsScoring' => [
        [
            'eventName' => 'Add to cart',
            'eventType' => 'conversion',
            'score' => 50,
        ],
        [
            'eventName' => 'Purchase',
            'eventType' => 'conversion',
            'score' => 100,
        ],
    ],
    'facetsScoring' => [
        ['facetName' => 'brand', 'score' => 100],
        ['facetName' => 'categories', 'score' => 10],
    ],
    'personalizationImpact' => 50,
]);

Parameters

strategy
type: object
Required

A strategy object.

{
  eventsScoring,
  facetsScoring,
  personalizationImpact
}
requestOptions
type: key-value mapping
default: No request options
Optional

A mapping of request options to send along with the request.

strategy

eventsScoring
type: list of eventScoring
Required

Associate a score to some events

1
2
3
4
5
6
7
8
9
10
{
  "eventsScoring": [
    {
      "eventName": "purchase"
      "eventType": "conversion"
      "score": 100
    }
  ],
  ...
}
facetsScoring
type: list of facetScoring
Required

Associate a score to some facets

1
2
3
4
5
6
7
8
9
{
  "facetsScoring": [
    {
      "facetName": "brand",
      "score": 100
    }
  ],
  ...
}
personalizationImpact
type: integer
Required

The impact that personalization has on search results: a number between 0 (personalization disabled) and 100 (personalization fully enabled)

eventScoring

eventName
type: string

Name of the event

eventType
type: string

Type of the event

score
type: number

Score of the event

facetScoring

facetName
type: string

Name of the facet

score
type: number

Score of the facet

Response

This section shows the JSON response returned by the API. Each API client encapsulates this response inside objects specific to the programming language, so that the actual response might be different. You can view the response by using the getLogs method. Don’t rely on the order of attributes in the response, as JSON doesn’t guarantee the ordering of keys in objects.

JSON format

1
2
3
4
{
  "status": 200,
  "message": "Strategy was successfully updated"
}
Field Description
status
integer

Response status code

message
string

Response message

Did you find this page helpful?