# Users

When using Whisk Recommendation and Personalization APIs client app needs to maintain User Identity in the platform

The `id`of a User is then being submitted when accessing `/feed` or`/search` endpoints.

Whisk considers User Preferences such as [diets](https://docs.whisk.com/master/resources/recipe-labels#diets) or [avoidances](https://docs.whisk.com/master/resources/recipe-labels#avoidances) and user impressions such as Like or View events to personalize the output

## Model

| ATTRIBUTE      | TYPE                                | DESCRIPTION                                                                                                                    |
| -------------- | ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| id\*           | string                              | The id of the User on Whisk Graph                                                                                              |
| externalUserId | string                              | The user id you have defined for the user. (Max limit of 255 UTF-8 characters, and should not have trailing or leading spaces) |
| email          | string                              | The email you have defined for the user. (Max limit of 255 UTF-8 characters, and should not have trailing or leading spaces)   |
| firstName      | string                              | The first name of the user                                                                                                     |
| lastName       | string                              | The last name of the user                                                                                                      |
| displayName    | string                              | The display name of the user                                                                                                   |
| createdAt      | timestamp                           | The time the user was added to Whisk                                                                                           |
| updatedAt      | timestamp                           | The last time the user was updated                                                                                             |
| pictureUrl     | string                              | The profile picture url of a user                                                                                              |
| preferences    | [UserPreferences](#userpreferences) |                                                                                                                                |

### UserPreferences

| ATTRIBUTE             | TYPE            | DESCRIPTION                                                                                                           |
| --------------------- | --------------- | --------------------------------------------------------------------------------------------------------------------- |
| country               | string          | Country iso code. Examples: gb, kr, us...                                                                             |
| zipcode               | string          | Postal code. Examples: 10001, 80333...                                                                                |
| language              | string          | Language iso code. Examples: en, ko, fr...                                                                            |
| cookingSkill          | enum            | The measure of a person’s competence in preparing and cooking foods Possible values: amateur, intermediate, advanced. |
| gender                | enum            | Possible values: female, male.                                                                                        |
| householdSizeChildren | integer         | Number of children                                                                                                    |
| householdSizeAdults   | integer         | Number of adults Default value: 1                                                                                     |
| dislikedIngredients   | array \[string] | Products and ingredients which will be excluded in search and feed APIs.                                              |
| diets                 | array \[string] | more about diets                                                                                                      |
| avoidances            | array \[string] | more about avoidances                                                                                                 |
