# Update type

Change the triggering conditions and settings of a `draft` type, or update the `status` of an `active`
type to `deprecated`.

Endpoint: PUT /notification-types/{notificationTypeId}
Version: 2025-03-26
Security: oauth2, bearerAuth, apiKeyHeader

## Path parameters:

  - `notificationTypeId` (integer, required)
    The Notification Type unique identifier.

## Query parameters:

  - `version` (integer)
    Optional argument. If provided, the action will be performed on the specified `version`.

## Request fields (application/json):

  - `channel` (string)
    The channel where interactions with a borrower occur. For example, an
outbound call with a borrower is considered a `voice` interaction.
**DEPRECATED**: The `fax` channel is deprecated: new interactions
cannot be created with the `fax` channel. It will be removed
from completely in the future.
    Enum: "voice", "email", "fax", "text", "chat", "mail", "gui", "document"

  - `delay` (integer)
    Length of time after a triggering condition to wait before sending notification.

  - `onCondition` (array)
    Array of conditions for case fields values. `and` operator is used if multiple conditions
are provided. For example:
- A `bankruptcy` case has two fields, `chapter` and `dispositionCode`.
- If two conditions are created: first `chapter=chapter17`, second `dispositionCode=dismissed`.
- The logical condition will look like: `chapter=chapter17` **and** `dispositionCode=dismissed`.

  - `onCondition.dataType` (string)
    The field type of data. Used for properly parsing the field value.
    Enum: "integer", "real", "string", "boolean", "dateTime"

  - `onCondition.fieldName` (string)
    Name of the field as known in the API (e.g. `typeId` not `type_id`).

  - `onCondition.operator` (string)
    The value of the case `fieldName` is compared to `value` using this logical operator.
For example, bankruptcy case `fieldName=chapter` can be compared with `value=dismissed` using `eq` (equal operator).
`eq`=equal, `gt`=greater than, `ge`=greater or equal, `lt`=less than, `le`=less or equal, `ne`=not equal.
    Enum: "eq", "gt", "ge", "lt", "le", "ne"

  - `onCondition.value` (any)
    The value to compare with.

  - `onOutcome` (string)
    The outcome of a process, case, complaint, or dispute.
- If found to be valid, set value to `approved`.
This might impact debt collection efforts.
- If dismissed, set value to `denied`.
This will have no further impact on debt collection efforts.
- If found to be a false positive, set value to `falsePositive`.
- If completed without an outcome (or no outcome was needed), set to `noOutcome`.
    Enum: "approved", "denied", "falsePositive", "noOutcome"

  - `onStatus` (string)
    The status of a process. This can be updated by a lender or by Peach.
`initiated` - The lender was notified by a borrower, but no documents or
evidence have been provided yet. A grace period can be set.
`processing` - Peach matched the borrower to an external data source, or the
lender started an internal process to handle a case, complaint or dispute.
`completed` - The lender completed an internal process, case, complaint or
dispute. For example:
- A borrower reported identity theft, and the lender reviewed documents
and approved the claim.
- A borrower requested a verification of debt in writing, and the lender sent an email with
details.
- Peach notified the lender about a new bankruptcy, and the lender reviewed
the case and deemed it to be a false positive.

`canceled` - The lender couldn't complete an internal process and canceled
it. This can happen for various reasons, such as lack of
sufficient documentation.
`reopened` - The lender re-opened the case.
    Enum: "initiated", "processing", "completed", "canceled", "reopened"

  - `templateId` (integer)
    Communication template identifier to create and send notification.

  - `theme` (string)
    The reason why an interaction occurred.
For example:
- An outbound debt collection call should be marked as `opsCollDebt`.
- An annual privacy policy update email should be marked as `opsServicing`.
- A customer service response to borrower's inquiry should be marked as `opsServicing`.

**DEPRECATED**: `inbBug`, `inbHumanLove`, and `opsServicingNegativeCreditReportNotice` are deprecated:
you cannot create or update interactions to have these values.
    Enum: "agentNotification", "opsCollDebt", "opsCollLocateBorrower", "opsCollVerifyEmployment", "opsCollContactEmployerNotice", "opsServicingDebtValidation", "opsServicingNegativeCreditReportNotice", "opsServicingTimeBarredNotice", "opsServicing", "opsAccountCredentials", "inbMissingFeature", "inbEducation", "inbBug", "inbRequest", "inbHumanLove", "inbUnknown", "inbOther", "inbServicing", "inbCollections", "inbPayments", "inbFraud", "inbGeneralInquiry"

  - `unit` (string)
    Time units for setting the `delay` time.
    Enum: "calendarDays", "businessDays"

## Response 200 fields (application/json):

  - `message` (string)
    Description of the server action or error.

  - `status` (integer)
    HTTP status code.

  - `data` (object)

  - `data.channel` (string)
    The channel where interactions with a borrower occur. For example, an
outbound call with a borrower is considered a `voice` interaction.
**DEPRECATED**: The `fax` channel is deprecated: new interactions
cannot be created with the `fax` channel. It will be removed
from completely in the future.
    Enum: "voice", "email", "fax", "text", "chat", "mail", "gui", "document"

  - `data.delay` (integer)
    Length of time after a triggering condition to wait before sending notification.

  - `data.onCondition` (array)
    Array of conditions for case fields values. `and` operator is used if multiple conditions
are provided. For example:
- A `bankruptcy` case has two fields, `chapter` and `dispositionCode`.
- If two conditions are created: first `chapter=chapter17`, second `dispositionCode=dismissed`.
- The logical condition will look like: `chapter=chapter17` **and** `dispositionCode=dismissed`.

  - `data.onCondition.dataType` (string)
    The field type of data. Used for properly parsing the field value.
    Enum: "integer", "real", "string", "boolean", "dateTime"

  - `data.onCondition.fieldName` (string)
    Name of the field as known in the API (e.g. `typeId` not `type_id`).

  - `data.onCondition.operator` (string)
    The value of the case `fieldName` is compared to `value` using this logical operator.
For example, bankruptcy case `fieldName=chapter` can be compared with `value=dismissed` using `eq` (equal operator).
`eq`=equal, `gt`=greater than, `ge`=greater or equal, `lt`=less than, `le`=less or equal, `ne`=not equal.
    Enum: "eq", "gt", "ge", "lt", "le", "ne"

  - `data.onCondition.value` (any)
    The value to compare with.

  - `data.onOutcome` (string)
    The outcome of a process, case, complaint, or dispute.
- If found to be valid, set value to `approved`.
This might impact debt collection efforts.
- If dismissed, set value to `denied`.
This will have no further impact on debt collection efforts.
- If found to be a false positive, set value to `falsePositive`.
- If completed without an outcome (or no outcome was needed), set to `noOutcome`.
    Enum: "approved", "denied", "falsePositive", "noOutcome"

  - `data.onStatus` (string)
    The status of a process. This can be updated by a lender or by Peach.
`initiated` - The lender was notified by a borrower, but no documents or
evidence have been provided yet. A grace period can be set.
`processing` - Peach matched the borrower to an external data source, or the
lender started an internal process to handle a case, complaint or dispute.
`completed` - The lender completed an internal process, case, complaint or
dispute. For example:
- A borrower reported identity theft, and the lender reviewed documents
and approved the claim.
- A borrower requested a verification of debt in writing, and the lender sent an email with
details.
- Peach notified the lender about a new bankruptcy, and the lender reviewed
the case and deemed it to be a false positive.

`canceled` - The lender couldn't complete an internal process and canceled
it. This can happen for various reasons, such as lack of
sufficient documentation.
`reopened` - The lender re-opened the case.
    Enum: "initiated", "processing", "completed", "canceled", "reopened"

  - `data.templateId` (integer)
    Communication template identifier to create and send notification.

  - `data.theme` (string)
    The reason why an interaction occurred.
For example:
- An outbound debt collection call should be marked as `opsCollDebt`.
- An annual privacy policy update email should be marked as `opsServicing`.
- A customer service response to borrower's inquiry should be marked as `opsServicing`.

**DEPRECATED**: `inbBug`, `inbHumanLove`, and `opsServicingNegativeCreditReportNotice` are deprecated:
you cannot create or update interactions to have these values.
    Enum: "agentNotification", "opsCollDebt", "opsCollLocateBorrower", "opsCollVerifyEmployment", "opsCollContactEmployerNotice", "opsServicingDebtValidation", "opsServicingNegativeCreditReportNotice", "opsServicingTimeBarredNotice", "opsServicing", "opsAccountCredentials", "inbMissingFeature", "inbEducation", "inbBug", "inbRequest", "inbHumanLove", "inbUnknown", "inbOther", "inbServicing", "inbCollections", "inbPayments", "inbFraud", "inbGeneralInquiry"

  - `data.unit` (string)
    Time units for setting the `delay` time.
    Enum: "calendarDays", "businessDays"

