# Update SpamAssassin™ settings

This function sets the Apache SpamAssassin™ settings for the account.

Note:

Additional customizations may appear in the function's return. For more information,
read the Apache SpamAssassin configuration file documentation.

Endpoint: GET /SpamAssassin/update_user_preference
Version: 11.136.0.13
Security: BasicAuth

## Query parameters:

  - `preference` (string, required)
    The variable that you want to manipulate.

* score
* required_score
* whitelist_from
* blacklist_from
* A custom SpamAssassin variable.

Important:

* You can only choose one of these possible values per call.
* If you enter a value for the preference parameter, but you do not define a value for the value parameter, the function will remove any previous settings.
    Example: "score"

  - `value` (string)
    The value for the preference of the variable that you want to manipulate.

* A valid SpamAssassin "TEST_NAME SCORE" value when the value of the preference parameter is score, where:

    * TEST_NAME represents the symbolic name of the test. For list of symbolic test names, run the UAPI SpamAssassin::get_symbolic_test_names function.
    * SCORE represents the floating-point value that SpamAssassin assigns to the mail when the test result is true. The score value must be greater than 0, and less than 1000.

* A valid floating-point number if the value of the preference parameter is required_score.
* A valid email address if the value of the preference parameter is whitelist_from or blacklist_from.
* A custom SpamAssassin variable value.

Note:

To enter multiple values, increment the parameter name. For example, use the value-0 and value-1 parameters.
    Example: "ACT_NOW_CAPS 5.0"

## Response 200 fields (application/json):

  - `apiversion` (integer)
    The version of the API.
    Example: 3

  - `func` (string)
    The name of the method called.
    Example: "update_user_preference"

  - `module` (string)
    The name of the module called.
    Example: "SpamAssassin"

  - `result` (object)

  - `result.data` (object)
    Example: {"blacklist_from":["username2@example.com"],"ok_locales":["all"],"required_score":[5],"score":["ACT_NOW_CAPS 5"],"whitelist_from":["username@example.com"]}

  - `result.data.additionalProperties` (array)
    An array containing custom SpamAssassin variable values.

Note:

The array's name is the custom SpamAssassin variable's name.
    Example: ["mycustomscore"]

  - `result.data.blacklist_from` (array)
    An array of email addresses on the blacklist.
    Example: ["username2@example.com"]

  - `result.data.required_score` (array)
    An array containing the score at which the system will mark a message as spam. The system considers mail that matches this score to be spam.
    Example: [5]

  - `result.data.score` (array)
    An array of the symbolic test names and their scores.
    Example: ["ACT_NOW_CAPS 5"]

  - `result.data.whitelist_from` (array)
    An array of the email addresses on the whitelist.
    Example: ["username@example.com"]

  - `result.errors` (array,null)
    List of errors if the API failed.

  - `result.messages` (array,null)
    List of messages generated by the API.

  - `result.metadata` (object)

  - `result.status` (integer)
    * 1 - Success.
* 0 - Failed. Check the errors field for more details.
    Enum: 0, 1

  - `result.warnings` (array,null)
    List of warnings generated by the API. Warnings describe non-critical failures or other problematic conditions noted while running an API.


