# Tracking

Operations for tracking

## Track a cart event

> \<b>Required Roles\</b>: \<em>ApiPublicQueries\</em>

```json
{"openapi":"3.0.1","info":{"title":"FactFinder REST API","version":"v5"},"tags":[{"name":"tracking","description":"Operations for tracking"}],"servers":[{"url":"https://vector-demo.fact-finder.de/fact-finder/","description":"Generated server url"}],"security":[{"basicAuth":[]},{"oAuth2":["public_queries"]},{"apiKey":[]}],"components":{"securitySchemes":{"basicAuth":{"type":"http","scheme":"basic"},"oAuth2":{"type":"oauth2","flows":{"password":{"tokenUrl":"oauth/token","scopes":{"public_queries":"","import":"","database":"","config":"","analytics":"","jobs":"","monitor":"","manage":"","users":""}}}},"apiKey":{"type":"apiKey","name":"X-FF-API-Key","in":"header"}},"schemas":{"CartOrCheckoutEvent":{"required":["count","id","sid"],"type":"object","properties":{"campaign":{"type":"string","description":"If the product was added to search result by a campaign, this field should contain the campaign ID."},"count":{"type":"integer","description":"The number of items.","format":"int32"},"id":{"type":"string","description":"The ID of the product."},"masterId":{"type":"string","description":"Contains the master ID, if the article is a variant and 'ID' refers to the variant."},"price":{"type":"number","description":"The single-item price of the product.","format":"double"},"purchaserId":{"type":"string","description":"The ID for Customer-Specific Info."},"sid":{"type":"string","description":"The session ID."},"title":{"type":"string","description":"The title of the product."},"userId":{"type":"string","description":"The ID of the user who issued the request."}}},"ApiError":{"required":["error"],"type":"object","properties":{"error":{"type":"string","description":"A short error description"},"errorDescription":{"type":"string","description":"A description of the error cause"},"stacktrace":{"type":"array","description":"The stacktrace from the error (will only be transmitted when the query parameter verbose=true was added to the request)","items":{"type":"string"}}},"description":"Contains information which will be returned when an error occurs."}}},"paths":{"/rest/v5/track/{channel}/cart":{"post":{"tags":["tracking"],"summary":"Track a cart event","description":"<b>Required Roles</b>: <em>ApiPublicQueries</em>","operationId":"trackCart","parameters":[{"name":"channel","in":"path","description":"The channel","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CartOrCheckoutEvent"}}}},"required":true},"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"500":{"description":"Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}}}}}}
```

## Track a checkout event

> \<b>Required Roles\</b>: \<em>ApiPublicQueries\</em>

```json
{"openapi":"3.0.1","info":{"title":"FactFinder REST API","version":"v5"},"tags":[{"name":"tracking","description":"Operations for tracking"}],"servers":[{"url":"https://vector-demo.fact-finder.de/fact-finder/","description":"Generated server url"}],"security":[{"basicAuth":[]},{"oAuth2":["public_queries"]},{"apiKey":[]}],"components":{"securitySchemes":{"basicAuth":{"type":"http","scheme":"basic"},"oAuth2":{"type":"oauth2","flows":{"password":{"tokenUrl":"oauth/token","scopes":{"public_queries":"","import":"","database":"","config":"","analytics":"","jobs":"","monitor":"","manage":"","users":""}}}},"apiKey":{"type":"apiKey","name":"X-FF-API-Key","in":"header"}},"schemas":{"CartOrCheckoutEvent":{"required":["count","id","sid"],"type":"object","properties":{"campaign":{"type":"string","description":"If the product was added to search result by a campaign, this field should contain the campaign ID."},"count":{"type":"integer","description":"The number of items.","format":"int32"},"id":{"type":"string","description":"The ID of the product."},"masterId":{"type":"string","description":"Contains the master ID, if the article is a variant and 'ID' refers to the variant."},"price":{"type":"number","description":"The single-item price of the product.","format":"double"},"purchaserId":{"type":"string","description":"The ID for Customer-Specific Info."},"sid":{"type":"string","description":"The session ID."},"title":{"type":"string","description":"The title of the product."},"userId":{"type":"string","description":"The ID of the user who issued the request."}}},"ApiError":{"required":["error"],"type":"object","properties":{"error":{"type":"string","description":"A short error description"},"errorDescription":{"type":"string","description":"A description of the error cause"},"stacktrace":{"type":"array","description":"The stacktrace from the error (will only be transmitted when the query parameter verbose=true was added to the request)","items":{"type":"string"}}},"description":"Contains information which will be returned when an error occurs."}}},"paths":{"/rest/v5/track/{channel}/checkout":{"post":{"tags":["tracking"],"summary":"Track a checkout event","description":"<b>Required Roles</b>: <em>ApiPublicQueries</em>","operationId":"trackCheckout","parameters":[{"name":"channel","in":"path","description":"The channel","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CartOrCheckoutEvent"}}}},"required":true},"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"500":{"description":"Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}}}}}}
```

## Track a click event

> \<b>Required Roles\</b>: \<em>ApiPublicQueries\</em>

```json
{"openapi":"3.0.1","info":{"title":"FactFinder REST API","version":"v5"},"tags":[{"name":"tracking","description":"Operations for tracking"}],"servers":[{"url":"https://vector-demo.fact-finder.de/fact-finder/","description":"Generated server url"}],"security":[{"basicAuth":[]},{"oAuth2":["public_queries"]},{"apiKey":[]}],"components":{"securitySchemes":{"basicAuth":{"type":"http","scheme":"basic"},"oAuth2":{"type":"oauth2","flows":{"password":{"tokenUrl":"oauth/token","scopes":{"public_queries":"","import":"","database":"","config":"","analytics":"","jobs":"","monitor":"","manage":"","users":""}}}},"apiKey":{"type":"apiKey","name":"X-FF-API-Key","in":"header"}},"schemas":{"ClickEvent":{"required":["id","pos","query","sid"],"type":"object","properties":{"campaign":{"type":"string","description":"If the product was added to search results by a campaign, this field should contain the campaign ID."},"id":{"type":"string","description":"The ID of the product."},"masterId":{"type":"string","description":"Contains the master ID, if the article is a variant and 'ID' refers to the variant."},"page":{"type":"integer","description":"The page number of the search result that contains the product.","format":"int32"},"pageSize":{"type":"integer","description":"The current page size (possibly adjusted by the user) when the product was clicked.","format":"int32"},"pos":{"minimum":1,"type":"integer","description":"The overall position of the product inside the search result.","format":"int32"},"purchaserId":{"type":"string","description":"The ID for Customer-Specific Info."},"query":{"type":"string","description":"The search term that the user searched for."},"score":{"minimum":0,"type":"number","description":"The score of the product.","format":"double"},"sid":{"type":"string","description":"The session ID."},"title":{"type":"string","description":"The title of the product."},"userId":{"type":"string","description":"The ID of the user who issued the request."}}},"ApiError":{"required":["error"],"type":"object","properties":{"error":{"type":"string","description":"A short error description"},"errorDescription":{"type":"string","description":"A description of the error cause"},"stacktrace":{"type":"array","description":"The stacktrace from the error (will only be transmitted when the query parameter verbose=true was added to the request)","items":{"type":"string"}}},"description":"Contains information which will be returned when an error occurs."}}},"paths":{"/rest/v5/track/{channel}/click":{"post":{"tags":["tracking"],"summary":"Track a click event","description":"<b>Required Roles</b>: <em>ApiPublicQueries</em>","operationId":"trackClick","parameters":[{"name":"channel","in":"path","description":"The channel","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ClickEvent"}}}},"required":true},"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"500":{"description":"Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}}}}}}
```

## Track a feedback event

> \<b>Required Roles\</b>: \<em>ApiPublicQueries\</em>

```json
{"openapi":"3.0.1","info":{"title":"FactFinder REST API","version":"v5"},"tags":[{"name":"tracking","description":"Operations for tracking"}],"servers":[{"url":"https://vector-demo.fact-finder.de/fact-finder/","description":"Generated server url"}],"security":[{"basicAuth":[]},{"oAuth2":["public_queries"]},{"apiKey":[]}],"components":{"securitySchemes":{"basicAuth":{"type":"http","scheme":"basic"},"oAuth2":{"type":"oauth2","flows":{"password":{"tokenUrl":"oauth/token","scopes":{"public_queries":"","import":"","database":"","config":"","analytics":"","jobs":"","monitor":"","manage":"","users":""}}}},"apiKey":{"type":"apiKey","name":"X-FF-API-Key","in":"header"}},"schemas":{"FeedbackEvent":{"required":["positive","query","sid"],"type":"object","properties":{"message":{"type":"string","description":"Additional information provided by the user."},"positive":{"type":"boolean","description":"Set to true when the user gives a positive assessment of the result, otherwise false."},"query":{"type":"string","description":"The search term that produced the corresponding search result."},"sid":{"type":"string","description":"The session ID."}}},"ApiError":{"required":["error"],"type":"object","properties":{"error":{"type":"string","description":"A short error description"},"errorDescription":{"type":"string","description":"A description of the error cause"},"stacktrace":{"type":"array","description":"The stacktrace from the error (will only be transmitted when the query parameter verbose=true was added to the request)","items":{"type":"string"}}},"description":"Contains information which will be returned when an error occurs."}}},"paths":{"/rest/v5/track/{channel}/feedback":{"post":{"tags":["tracking"],"summary":"Track a feedback event","description":"<b>Required Roles</b>: <em>ApiPublicQueries</em>","operationId":"trackFeedback","parameters":[{"name":"channel","in":"path","description":"The channel","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FeedbackEvent"}}}},"required":true},"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"500":{"description":"Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}}}}}}
```

## Track a click event for products provided by a campaign on a landing page.

> \<b>Required Roles\</b>: \<em>ApiPublicQueries\</em>

```json
{"openapi":"3.0.1","info":{"title":"FactFinder REST API","version":"v5"},"tags":[{"name":"tracking","description":"Operations for tracking"}],"servers":[{"url":"https://vector-demo.fact-finder.de/fact-finder/","description":"Generated server url"}],"security":[{"basicAuth":[]},{"oAuth2":["public_queries"]},{"apiKey":[]}],"components":{"securitySchemes":{"basicAuth":{"type":"http","scheme":"basic"},"oAuth2":{"type":"oauth2","flows":{"password":{"tokenUrl":"oauth/token","scopes":{"public_queries":"","import":"","database":"","config":"","analytics":"","jobs":"","monitor":"","manage":"","users":""}}}},"apiKey":{"type":"apiKey","name":"X-FF-API-Key","in":"header"}},"schemas":{"LandingPageClickEvent":{"required":["campaign","id","pageId","sid"],"type":"object","properties":{"campaign":{"type":"string","description":"The ID of the campaign, which added the product to the landing page."},"id":{"type":"string","description":"The ID of the product."},"masterId":{"type":"string","description":"Contains the master ID, if the article is a variant and 'ID' refers to the variant."},"pageId":{"type":"string","description":"The ID of the landing page."},"purchaserId":{"type":"string","description":"The ID for Customer-Specific Info."},"sid":{"type":"string","description":"The session ID."},"title":{"type":"string","description":"The title of the product."},"userId":{"type":"string","description":"The ID of the user who issued the request."}}},"ApiError":{"required":["error"],"type":"object","properties":{"error":{"type":"string","description":"A short error description"},"errorDescription":{"type":"string","description":"A description of the error cause"},"stacktrace":{"type":"array","description":"The stacktrace from the error (will only be transmitted when the query parameter verbose=true was added to the request)","items":{"type":"string"}}},"description":"Contains information which will be returned when an error occurs."}}},"paths":{"/rest/v5/track/{channel}/landingPageClick":{"post":{"tags":["tracking"],"summary":"Track a click event for products provided by a campaign on a landing page.","description":"<b>Required Roles</b>: <em>ApiPublicQueries</em>","operationId":"trackLandingPageClick","parameters":[{"name":"channel","in":"path","description":"The channel","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/LandingPageClickEvent"}}}},"required":true},"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"500":{"description":"Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}}}}}}
```

## Track a log event

> \<b>Required Roles\</b>: \<em>ApiPublicQueries\</em>

```json
{"openapi":"3.0.1","info":{"title":"FactFinder REST API","version":"v5"},"tags":[{"name":"tracking","description":"Operations for tracking"}],"servers":[{"url":"https://vector-demo.fact-finder.de/fact-finder/","description":"Generated server url"}],"security":[{"basicAuth":[]},{"oAuth2":["public_queries"]},{"apiKey":[]}],"components":{"securitySchemes":{"basicAuth":{"type":"http","scheme":"basic"},"oAuth2":{"type":"oauth2","flows":{"password":{"tokenUrl":"oauth/token","scopes":{"public_queries":"","import":"","database":"","config":"","analytics":"","jobs":"","monitor":"","manage":"","users":""}}}},"apiKey":{"type":"apiKey","name":"X-FF-API-Key","in":"header"}},"schemas":{"SearchLogEvent":{"required":["filters","hitCount","id","maxScore","minScore","page","pageSize","query","searchTime","sid"],"type":"object","properties":{"additionalInfo":{"type":"string","description":"Additional information that should be logged."},"customSorting":{"type":"boolean","description":"Set to true, if the search result was sorted using a custom sorting order, otherwise false."},"filters":{"type":"array","description":"The filters active in the search result.","items":{"$ref":"#/components/schemas/Filter"}},"hitCount":{"type":"integer","description":"The total number of products in the search result.","format":"int32"},"id":{"type":"string","description":"The ID of the product."},"masterId":{"type":"string","description":"Contains the master ID, if the article is a variant and 'ID' refers to the variant."},"maxScore":{"type":"integer","description":"The score of the first product in the result.","format":"int32"},"minScore":{"type":"integer","description":"The score of the last product in the result.","format":"int32"},"page":{"type":"integer","description":"The page number delivered by the search result.","format":"int32"},"pageSize":{"type":"integer","description":"The maximum number of products on a page.","format":"int32"},"purchaserId":{"type":"string","description":"The ID for Customer-Specific Info."},"query":{"type":"string","description":"The search term that produced the search result."},"searchField":{"type":"string","description":"Contains the name of the search field, if the search was performed on a specific field."},"searchTime":{"type":"integer","description":"The time required to produce the results (in ms).","format":"int32"},"sid":{"type":"string","description":"The session ID."},"title":{"type":"string","description":"The title of the product."},"userId":{"type":"string","description":"The ID of the user who issued the request."}}},"Filter":{"required":["name","substring","values"],"type":"object","properties":{"filterWarning":{"type":"string","description":"Contains warning about invalid filters (e.g. non-existent field or non-existent value).","enum":["NON_EXISTING_FIELD","NON_EXISTING_FIELD_VALUE"]},"name":{"type":"string","description":"The name of the filter."},"substring":{"type":"boolean","description":"If true, filter values will be applied as 'contains' instead of 'equals'."},"values":{"type":"array","description":"Filter values.","items":{"$ref":"#/components/schemas/FilterValue"}}}},"FilterValue":{"required":["exclude","type","value"],"type":"object","properties":{"exclude":{"type":"boolean","description":"When set to true, the filter will match when the record value does not equal the filter value."},"type":{"type":"string","description":"Describes how this filter value should interact with the corresponding filter field.","enum":["or","and"]},"value":{"$ref":"#/components/schemas/FilterValueInput"}}},"FilterValueInput":{"description":"The value to which the record values will be compared.","oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"ApiError":{"required":["error"],"type":"object","properties":{"error":{"type":"string","description":"A short error description"},"errorDescription":{"type":"string","description":"A description of the error cause"},"stacktrace":{"type":"array","description":"The stacktrace from the error (will only be transmitted when the query parameter verbose=true was added to the request)","items":{"type":"string"}}},"description":"Contains information which will be returned when an error occurs."}}},"paths":{"/rest/v5/track/{channel}/log":{"post":{"tags":["tracking"],"summary":"Track a log event","description":"<b>Required Roles</b>: <em>ApiPublicQueries</em>","operationId":"trackLog","parameters":[{"name":"channel","in":"path","description":"The channel","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchLogEvent"}}}},"required":true},"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"500":{"description":"Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}}}}}}
```

## Track a login event

> \<b>Required Roles\</b>: \<em>ApiPublicQueries\</em>

```json
{"openapi":"3.0.1","info":{"title":"FactFinder REST API","version":"v5"},"tags":[{"name":"tracking","description":"Operations for tracking"}],"servers":[{"url":"https://vector-demo.fact-finder.de/fact-finder/","description":"Generated server url"}],"security":[{"basicAuth":[]},{"oAuth2":["public_queries"]},{"apiKey":[]}],"components":{"securitySchemes":{"basicAuth":{"type":"http","scheme":"basic"},"oAuth2":{"type":"oauth2","flows":{"password":{"tokenUrl":"oauth/token","scopes":{"public_queries":"","import":"","database":"","config":"","analytics":"","jobs":"","monitor":"","manage":"","users":""}}}},"apiKey":{"type":"apiKey","name":"X-FF-API-Key","in":"header"}},"schemas":{"LoginEvent":{"required":["sid","userId"],"type":"object","properties":{"purchaserId":{"type":"string","description":"The ID for Customer-Specific Info."},"sid":{"type":"string","description":"Session ID."},"userId":{"type":"string","description":"The ID of the user currently logged in."}}},"ApiError":{"required":["error"],"type":"object","properties":{"error":{"type":"string","description":"A short error description"},"errorDescription":{"type":"string","description":"A description of the error cause"},"stacktrace":{"type":"array","description":"The stacktrace from the error (will only be transmitted when the query parameter verbose=true was added to the request)","items":{"type":"string"}}},"description":"Contains information which will be returned when an error occurs."}}},"paths":{"/rest/v5/track/{channel}/login":{"post":{"tags":["tracking"],"summary":"Track a login event","description":"<b>Required Roles</b>: <em>ApiPublicQueries</em>","operationId":"trackLogin","parameters":[{"name":"channel","in":"path","description":"The channel","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/LoginEvent"}}}},"required":true},"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"500":{"description":"Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}}}}}}
```

## Track a predictive basket click event

> \<b>Required Roles\</b>: \<em>ApiPublicQueries\</em>

```json
{"openapi":"3.0.1","info":{"title":"FactFinder REST API","version":"v5"},"tags":[{"name":"tracking","description":"Operations for tracking"}],"servers":[{"url":"https://vector-demo.fact-finder.de/fact-finder/","description":"Generated server url"}],"security":[{"basicAuth":[]},{"oAuth2":["public_queries"]},{"apiKey":[]}],"components":{"securitySchemes":{"basicAuth":{"type":"http","scheme":"basic"},"oAuth2":{"type":"oauth2","flows":{"password":{"tokenUrl":"oauth/token","scopes":{"public_queries":"","import":"","database":"","config":"","analytics":"","jobs":"","monitor":"","manage":"","users":""}}}},"apiKey":{"type":"apiKey","name":"X-FF-API-Key","in":"header"}},"schemas":{"PredBasketClickEvent":{"required":["id","sid","userId"],"type":"object","properties":{"id":{"type":"string","description":"The ID of the product."},"masterId":{"type":"string","description":"Contains the master ID, if the article is a variant and 'ID' refers to the variant."},"purchaserId":{"type":"string","description":"The ID for Customer-Specific Info."},"sid":{"type":"string","description":"The session ID."},"title":{"type":"string","description":"The title of the product."},"userId":{"type":"string","description":"The user ID of the user clicking the suggested product."}}},"ApiError":{"required":["error"],"type":"object","properties":{"error":{"type":"string","description":"A short error description"},"errorDescription":{"type":"string","description":"A description of the error cause"},"stacktrace":{"type":"array","description":"The stacktrace from the error (will only be transmitted when the query parameter verbose=true was added to the request)","items":{"type":"string"}}},"description":"Contains information which will be returned when an error occurs."}}},"paths":{"/rest/v5/track/{channel}/predbasketClick":{"post":{"tags":["tracking"],"summary":"Track a predictive basket click event","description":"<b>Required Roles</b>: <em>ApiPublicQueries</em>","operationId":"trackPredBasketClick","parameters":[{"name":"channel","in":"path","description":"The channel","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/PredBasketClickEvent"}}}},"required":true},"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"500":{"description":"Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}}}}}}
```

## Track a recommendation click event

> \<b>Required Roles\</b>: \<em>ApiPublicQueries\</em>

```json
{"openapi":"3.0.1","info":{"title":"FactFinder REST API","version":"v5"},"tags":[{"name":"tracking","description":"Operations for tracking"}],"servers":[{"url":"https://vector-demo.fact-finder.de/fact-finder/","description":"Generated server url"}],"security":[{"basicAuth":[]},{"oAuth2":["public_queries"]},{"apiKey":[]}],"components":{"securitySchemes":{"basicAuth":{"type":"http","scheme":"basic"},"oAuth2":{"type":"oauth2","flows":{"password":{"tokenUrl":"oauth/token","scopes":{"public_queries":"","import":"","database":"","config":"","analytics":"","jobs":"","monitor":"","manage":"","users":""}}}},"apiKey":{"type":"apiKey","name":"X-FF-API-Key","in":"header"}},"schemas":{"RecommendationClickEvent":{"required":["id","mainId","sid"],"type":"object","properties":{"id":{"type":"string","description":"The ID of the product."},"mainId":{"type":"string","description":"The product ID for which the clicked product was recommended."},"masterId":{"type":"string","description":"Contains the master ID, if the article is a variant and 'ID' refers to the variant."},"purchaserId":{"type":"string","description":"The ID for Customer-Specific Info."},"sid":{"type":"string","description":"The session ID."},"title":{"type":"string","description":"The title of the product."},"userId":{"type":"string","description":"The ID of the user who issued the request."}}},"ApiError":{"required":["error"],"type":"object","properties":{"error":{"type":"string","description":"A short error description"},"errorDescription":{"type":"string","description":"A description of the error cause"},"stacktrace":{"type":"array","description":"The stacktrace from the error (will only be transmitted when the query parameter verbose=true was added to the request)","items":{"type":"string"}}},"description":"Contains information which will be returned when an error occurs."}}},"paths":{"/rest/v5/track/{channel}/recommendationClick":{"post":{"tags":["tracking"],"summary":"Track a recommendation click event","description":"<b>Required Roles</b>: <em>ApiPublicQueries</em>","operationId":"trackRecommendationClick","parameters":[{"name":"channel","in":"path","description":"The channel","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/RecommendationClickEvent"}}}},"required":true},"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"500":{"description":"Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}}}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.fact-finder.com/api-reference/tracking.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
