API client / Methods / Personalization
Required API Key: any key with the editSettings ACL
Method signature
$client->setPersonalizationStrategy(array strategy)

We released a new version of the PHP API client in public beta. Read the beta documentation for more information.

We released a new version of the JavaScript API client in public beta. Read the beta documentation for more information.

We released a new version of the Java API client in public beta. Read the beta documentation for more information.

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

Parameter Description
strategy
type: object
Required

A strategy object.

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

A mapping of requestOptions to send along with the request.

strategy

Parameter Description
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

Parameter Description
eventName
type: string

Name of the event

eventType
type: string

Type of the event

score
type: number

Score of the event

facetScoring

Parameter Description
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?