# Update predictive scoring model (legacy)

Update a predictive scoring model.  *This endpoint is for Audience Studio legacy. For the latest Audience Studio, contact your Customer Success Representative.*

Endpoint: PATCH /audiences/{audienceId}/predictive_segments/{predictiveSegmentId}
Version: 1.0.0
Security: TdApikeyAuth

## Security:

  - `TdApikeyAuth` (unknown)
    apiKey in header Authorization

## Path parameters:

  - `audienceId` (integer, required)
    Master Segment id of the predictive segment

  - `predictiveSegmentId` (integer, required)

## Request body:

  - `application/json` (unknown)
    Predictive Segment parameters to update

## Request fields (application/json):

  - `name` (string)

  - `description` (string)

  - `baseSegmentId` (integer)

  - `segmentId` (integer)

  - `scoredSegmentId` (integer)

  - `gradeThresholds` (array)
    Given the items [a, b, c], they must meet the condition `a >= b >= c`
    Example: [75,50,25]

  - `categoricalAsColumnNames` (array)

  - `categoricalArrayAsColumnNames` (array)

  - `quantitativeAsColumnNames` (array)

  - `preprocess` (array)
    Definition of preprocess. All of `$item.column` must be specified in one of categoricalAsColumnNames, categoricalArrayAsColumnNames, or quantitativeAsColumnNames.

  - `preprocess.column` (string, required)

  - `preprocess.source` (object, required)

  - `preprocess.source.column` (string)

  - `preprocess.source.table` (string)

  - `preprocess.source.functions` (array)

  - `preprocess.source.functions.function` (string, required)
    Enum: "+", "-", "*", "/"

  - `preprocess.source.functions.arg` (number)

  - `preprocess.source.functions.function` (string, required)
    Enum: "replace"

  - `preprocess.source.functions.search` (string)

  - `preprocess.source.functions.replacement` (string)

  - `preprocess.source.functions.function` (string, required)
    Enum: "substr"

  - `preprocess.source.functions.start` (number)

  - `preprocess.source.functions.length` (number)

  - `preprocess.source.functions.function` (string, required)
    Enum: "regexp_extract"

  - `preprocess.source.functions.pattern` (string)

  - `preprocess.source.functions.group` (number)

  - `preprocess.source.functions.function` (string, required)
    Enum: "day_of_week", "from_iso8601_timestamp", "ln", "elapsed_days", "td_ip_to_least_specific_subdivision_name", "td_ip_to_country_name", "td_ip_to_city_name", "td_ip_to_connection_type", "td_ip_to_domain"

  - `preprocess.source.functions.function` (string, required)
    Enum: "cast_as_quantitative"

  - `preprocess.source.functions.default` (number, required)

  - `preprocess.source.functions.function` (string, required)
    Enum: "cast_as_categorical"

  - `preprocess.source.functions.function` (string, required)
    Enum: "cast_as_categorical_array"

  - `preprocess.source.functions.function` (string, required)
    Enum: "if"

  - `preprocess.source.functions.op` (string)
    Enum: ">", "<", "<=", ">=", "=", "!=", "is", "is\\", "not"

  - `preprocess.source.functions.right_value` (number)

  - `preprocess.source.functions.then` (number)

  - `preprocess.source.functions.else` (number)

## Response 200:

  - `200` (unknown)
    successful operation

## Response 200 fields (application/json):

  - `audienceId` (string)

  - `id` (string)

  - `baseSegmentId` (string)

  - `segmentId` (string)

  - `scoredSegmentId` (string)

  - `name` (string)

  - `description` (string)

  - `categoricalAsColumnNames` (array)

  - `categoricalArrayAsColumnNames` (array)

  - `quantitativeAsColumnNames` (array)

  - `accuracy` (number)
    Accuracy for trained model evaluated on initial training.

  - `areaUnderRocCurve` (number)
    Evaluation score for the model. See also https://en.wikipedia.org/wiki/Receiver_operating_characteristic#Area_under_the_curve

  - `gradeThresholds` (array)
    Given the items [a, b, c], they must meet the condition `a >= b >= c`
    Example: [75,50,25]

  - `createdAt` (string)

  - `updatedAt` (string)

## Response 400:

  - `400` (unknown)
    Given parameters are not valid

## Response 400 fields (application/json):

  - `code` (string, required)

  - `message` (string, required)

## Response 401:

  - `401` (unknown)
    Unauthorized; You don't provide valid credentials. Maybe you didn't specify valid TD's Master API Key as 'TD1 {Your TD Master API Key}'.

## Response 401 fields (application/json):

  - `code` (string, required)

  - `message` (string, required)

## Response 403:

  - `403` (unknown)
    Requested resource or action is not allowed because you don't have sufficient permissions

## Response 403 fields (application/json):

  - `code` (string, required)

  - `message` (string, required)

## Response 404:

  - `404` (unknown)
    The specified resource was not found

## Response 404 fields (application/json):

  - `code` (string, required)

  - `message` (string, required)

## Response 4XX:

  - `4XX` (unknown)
    There is a high possibility of error of the authentication system. Please check the contents and authority of the key. Please contact the TD support team if you do not resolve it.

## Response 4XX fields (application/json):

  - `code` (string, required)

  - `message` (string, required)

## Response 5XX:

  - `5XX` (unknown)
    System error. Because there is a possibility of a temporary error due to network trouble and so on, we recommend several times retry on request side. Please contact the TD support team if you do not resolve it.

## Response 5XX fields (application/json):

  - `status` (integer, required)
    Error status

  - `error` (string, required)
    Error message

  - `details` (string)
    Detailed error message

