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

About this method

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.

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 requestOptions 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. Since each language encapsulates this response inside objects specific to that language and/or implementation, the actual type in your language might differ from what’s written here. You can view the response in the logs (using the getLogs method).

JSON format

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

Response status code

message
string

Response message

Did you find this page helpful?