Supercases

This object allows for the management of many cases across a number of borrowers. That is to say that a supercase can create, manage, and close many cases at once.

This is particularly useful if an issue occurs which effects a large group of borrowers.

  • Cases created by a supercase are called subcases
  • A supercase can only manage cases it has created (i.e., NOT cases created via the /cases endpoint)

Managing "who" is effected by a supercase is an important aspect of supercases:

  • A member of a supercase is one "borrower-loan" pairing.
  • A population is a set of members added at once.
    • A supercase might have many populations if different members are added at different times.
    • It's useful to keep track of sets of members like this because different actions might need to be taken on different members depending on when they're added to a supercase.
    • A population's membership may be changed until it is "committed" by setting isDraft: false, at which time the memberships are locked and subcases are created.

Create supercase

Creates a new supercase.

Securityoauth2 or bearerAuth or apiKeyHeader
Request
Request Body schema: application/json
externalId
string or null non-empty

A lender's identifier for an object.

After the object is successfully created, a lender can use id or externalId identifiers to fetch the object.

To fetch the object using externalId you need to add ext- to the URL.

Note: Don't add ext- to the identifier value. For example: if the external identifier is ABCDE, then pass externalId=ACBCE and NOT ext-ABCDE when creating the object.

supercaseType
required
string

The different types of supercases.

Note that supercaseType is different from subcaseType. A supercaseType describes the type of the supercase and cannot be changed after supercase creation.

Enum: "generic" "federalEmergency"
name
string <= 128 characters

Name of the supercase.

description
string

A description of the supercase and/or the precipitating event of the supercase.

eventStartedAt
string or null <date-time>

The date and time at which the precipitating event took place. For instance, in the case of a bug, the earliest date at which the bug affected customers; in the case of a disaster, the date at which the disaster occurred.

status
string (status)

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"
outcome
string or null (outcome)

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"
subcaseTypeId
string or null

The ID of the case-type which will be used when creating new subcases for this supercase. When a population is committed (by settings its isDraft: false) subcases of this type are created for all members of the population.

Notes:

  • This is different from the supercaseType
  • This must be NOT null in order to commit a population.
autoCreated
boolean

True if the super-case was created by some automated method.

femaDisasterNumber
integer

The associated FEMA disaster number.

femaMonitoringEndDate
string or null <date>

If set, the FEMA supercase monitoring will stop after this date.

Responses
200

Success

post/supercases
Request samples
application/json
{
  • "externalId": "string",
  • "supercaseType": "generic",
  • "name": "string",
  • "description": "string",
  • "eventStartedAt": "2019-08-24T14:15:22Z",
  • "status": "initiated",
  • "outcome": "approved",
  • "subcaseTypeId": "string",
  • "autoCreated": true,
  • "femaDisasterNumber": 0,
  • "femaMonitoringEndDate": "2019-08-24"
}
Response samples
application/json
{
  • "status": 0,
  • "message": "string",
  • "data": {
    }
}

List supercases

Securityoauth2 or bearerAuth or apiKeyHeader
Request
query Parameters
supercaseType
string

The type of the supercase

Enum: "generic" "federalEmergency"
limit
integer [ 1 .. 100 ]
Default: 25

The maximum count of results to retrieve.

startingAfter
string

Return results starting after the provided object identifier.

endingBefore
string

Return results ending before the provided object identifier.

sortBy
Array of strings

The data attributes by which to sort the results.

femaDisasterNumber
integer
Responses
200

Success

get/supercases
Response samples
application/json
{
  • "count": 0,
  • "data": [
    ]
}

Get supercase members.csv template

Securityoauth2 or bearerAuth or apiKeyHeader
Responses
200

Success

get/supercases/members-template.csv

Get supercase by ID

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

Responses
200

Success

get/supercases/{supercaseId}
Response samples
application/json
{
  • "status": 0,
  • "message": "string",
  • "data": {
    }
}

Update supercase

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

Request Body schema: application/json
externalId
string or null non-empty

A lender's identifier for an object.

After the object is successfully created, a lender can use id or externalId identifiers to fetch the object.

To fetch the object using externalId you need to add ext- to the URL.

Note: Don't add ext- to the identifier value. For example: if the external identifier is ABCDE, then pass externalId=ACBCE and NOT ext-ABCDE when creating the object.

supercaseType
string

The different types of supercases.

Note that supercaseType is different from subcaseType. A supercaseType describes the type of the supercase and cannot be changed after supercase creation.

Enum: "generic" "federalEmergency"
name
string <= 128 characters

Name of the supercase.

description
string

A description of the supercase and/or the precipitating event of the supercase.

eventStartedAt
string or null <date-time>

The date and time at which the precipitating event took place. For instance, in the case of a bug, the earliest date at which the bug affected customers; in the case of a disaster, the date at which the disaster occurred.

status
string (status)

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"
outcome
string or null (outcome)

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"
subcaseTypeId
string or null

The ID of the case-type which will be used when creating new subcases for this supercase. When a population is committed (by settings its isDraft: false) subcases of this type are created for all members of the population.

Notes:

  • This is different from the supercaseType
  • This must be NOT null in order to commit a population.
autoCreated
boolean

True if the super-case was created by some automated method.

femaDisasterNumber
integer

The associated FEMA disaster number.

femaMonitoringEndDate
string or null <date>

If set, the FEMA supercase monitoring will stop after this date.

Responses
200

Success

put/supercases/{supercaseId}
Request samples
application/json
{
  • "externalId": "string",
  • "supercaseType": "generic",
  • "name": "string",
  • "description": "string",
  • "eventStartedAt": "2019-08-24T14:15:22Z",
  • "status": "initiated",
  • "outcome": "approved",
  • "subcaseTypeId": "string",
  • "autoCreated": true,
  • "femaDisasterNumber": 0,
  • "femaMonitoringEndDate": "2019-08-24"
}
Response samples
application/json
{
  • "status": 0,
  • "message": "string",
  • "data": {
    }
}

List populations

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

Responses
200

Success

get/supercases/{supercaseId}/populations
Response samples
application/json
{
  • "count": 0,
  • "data": [
    ]
}

Get committed membership as CSV

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

Responses
200

Success

get/supercases/{supercaseId}/populations/members.csv

Get draft population

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

Responses
200

Success

get/supercases/{supercaseId}/populations/draft
Response samples
application/json
{
  • "status": 0,
  • "message": "string",
  • "data": {
    }
}

Commit draft population

Creates sub-cases for all members of the draft population and moves the population to the committed state.

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

Responses
204

Success no content

post/supercases/{supercaseId}/populations/draft/commit

Get the draft population members

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

Responses
200

Success

get/supercases/{supercaseId}/populations/draft/members
Response samples
application/json
{
  • "status": 0,
  • "message": "string",
  • "data": [
    ]
}

Set the draft population membership

Set the draft population membership to the population in this request. (Removing all current members if they exist.)

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

query Parameters
publishReviewTask
boolean
Default: true

Create case update review task if true. The task is created only when the user type is Service.

Request Body schema: application/json
Array
borrowerId
string

The borrower ID of a borrower affected by this supercase.

You must specify a borrower in addition to a loan because a loan might have multiple borrowers and only one of them might be affected by this supercase.

loanId
string or null

The loan ID of a loan affected by this supercase. The loan must be associated with the specified borrower.

Responses
200

Success

put/supercases/{supercaseId}/populations/draft/members
Request samples
application/json
[
  • {
    }
]

Add to the draft population membership

Add to the current population membership the members in this request.

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

query Parameters
publishReviewTask
boolean
Default: true

Create case update review task if true. The task is created only when the user type is Service.

Request Body schema: application/json
Array
borrowerId
string

The borrower ID of a borrower affected by this supercase.

You must specify a borrower in addition to a loan because a loan might have multiple borrowers and only one of them might be affected by this supercase.

loanId
string or null

The loan ID of a loan affected by this supercase. The loan must be associated with the specified borrower.

Responses
200

Success

post/supercases/{supercaseId}/populations/draft/members
Request samples
application/json
[
  • {
    }
]

Get membership as CSV

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

Responses
200

Success

get/supercases/{supercaseId}/populations/draft/members.csv

Set membership with CSV

Set the current population membership to the population in this request. (Removing all current members if they exist.) Format is a CSV document.

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

Request Body schema: application/octet-stream
string <binary>
Responses
200

Success

put/supercases/{supercaseId}/populations/draft/members.csv

Add to membership with CSV

Add to the current population membership with the population in this request. Format is a CSV document.

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

Request Body schema: application/octet-stream
string <binary>
Responses
200

Success

post/supercases/{supercaseId}/populations/draft/members.csv

Get population by ID

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

populationId
required
string

The ID of the population

Responses
200

Success

get/supercases/{supercaseId}/populations/{populationId}
Response samples
application/json
{
  • "status": 0,
  • "message": "string",
  • "data": {
    }
}

Update population

Update the population.

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

populationId
required
string

The ID of the population

Request Body schema: application/json
externalId
string or null non-empty

A lender's identifier for an object.

After the object is successfully created, a lender can use id or externalId identifiers to fetch the object.

To fetch the object using externalId you need to add ext- to the URL.

Note: Don't add ext- to the identifier value. For example: if the external identifier is ABCDE, then pass externalId=ACBCE and NOT ext-ABCDE when creating the object.

Responses
200

Success

put/supercases/{supercaseId}/populations/{populationId}
Request samples
application/json
{
  • "externalId": "string"
}
Response samples
application/json
{
  • "status": 0,
  • "message": "string",
  • "data": {
    }
}

Get population membership

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

populationId
required
string

The ID of the population

Responses
200

Success

get/supercases/{supercaseId}/populations/{populationId}/members
Response samples
application/json
{
  • "status": 0,
  • "message": "string",
  • "data": [
    ]
}

Get membership as CSV

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

populationId
required
string

The ID of the population

Responses
200

Success

get/supercases/{supercaseId}/populations/{populationId}/members.csv

Get private notes

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

query Parameters
limit
integer [ 1 .. 100 ]
Default: 25

The maximum count of results to retrieve.

startingAfter
string

Return results starting after the provided object identifier.

Responses
200

OK

get/supercases/{supercaseId}/notes
Response samples
application/json
{
  • "count": 0,
  • "data": [
    ]
}

Create private note

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

Request Body schema: application/json

The new note

status
string
Enum: "active" "inactive"
content
string

The content of the note.

important
boolean
Default: false

Set to true if the note is important.

sensitiveData
boolean
Default: false

Indicates whether the note contains sensitive information.

archived
boolean
Default: false

Set to true if the note has been archived.

taskableInstruction
boolean
Default: false

Set to true if the note is intended to be an instruction which creates a review task.

Responses
200

Success

post/supercases/{supercaseId}/notes
Request samples
application/json
{
  • "status": "active",
  • "content": "string",
  • "important": false,
  • "sensitiveData": false,
  • "archived": false,
  • "taskableInstruction": false
}
Response samples
application/json
{
  • "status": 0,
  • "message": "string",
  • "data": {
    }
}

Get private note by ID

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

noteId
required
string

The ID of the note

Responses
200

Success

get/supercases/{supercaseId}/notes/{noteId}
Response samples
application/json
{
  • "status": 0,
  • "message": "string",
  • "data": {
    }
}

Update private note

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

noteId
required
string

The ID of the note

Request Body schema: application/json

Note fields

status
string
Enum: "active" "inactive"
content
string

The content of the note.

important
boolean
Default: false

Set to true if the note is important.

sensitiveData
boolean
Default: false

Indicates whether the note contains sensitive information.

archived
boolean
Default: false

Set to true if the note has been archived.

taskableInstruction
boolean
Default: false

Set to true if the note is intended to be an instruction which creates a review task.

Responses
200

Success

put/supercases/{supercaseId}/notes/{noteId}
Request samples
application/json
{
  • "status": "active",
  • "content": "string",
  • "important": false,
  • "sensitiveData": false,
  • "archived": false,
  • "taskableInstruction": false
}
Response samples
application/json
{
  • "status": 0,
  • "message": "string",
  • "data": {
    }
}

Get global notes

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

query Parameters
startingAfter
string

Return results starting after the provided object identifier.

limit
integer [ 1 .. 100 ]
Default: 25

The maximum count of results to retrieve.

Responses
200

OK

get/supercases/{supercaseId}/global-notes
Response samples
application/json
{
  • "count": 0,
  • "data": [
    ]
}

Create global note

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

Request Body schema: application/json

The new note

status
string
Enum: "active" "inactive"
content
string

The content of the note.

important
boolean
Default: false

Set to true if the note is important.

sensitiveData
boolean
Default: false

Indicates whether the note contains sensitive information.

archived
boolean
Default: false

Set to true if the note has been archived.

taskableInstruction
boolean
Default: false

Set to true if the note is intended to be an instruction which creates a review task.

Responses
200

Success

post/supercases/{supercaseId}/global-notes
Request samples
application/json
{
  • "status": "active",
  • "content": "string",
  • "important": false,
  • "sensitiveData": false,
  • "archived": false,
  • "taskableInstruction": false
}
Response samples
application/json
{
  • "status": 0,
  • "message": "string",
  • "data": {
    }
}

Get global note by ID

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

noteId
required
string

The ID of the note

Responses
200

Success

get/supercases/{supercaseId}/global-notes/{noteId}
Response samples
application/json
{
  • "status": 0,
  • "message": "string",
  • "data": {
    }
}

Update global note

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

noteId
required
string

The ID of the note

Request Body schema: application/json

Note fields

status
string
Enum: "active" "inactive"
content
string

The content of the note.

important
boolean
Default: false

Set to true if the note is important.

sensitiveData
boolean
Default: false

Indicates whether the note contains sensitive information.

archived
boolean
Default: false

Set to true if the note has been archived.

taskableInstruction
boolean
Default: false

Set to true if the note is intended to be an instruction which creates a review task.

Responses
200

Success

put/supercases/{supercaseId}/global-notes/{noteId}
Request samples
application/json
{
  • "status": "active",
  • "content": "string",
  • "important": false,
  • "sensitiveData": false,
  • "archived": false,
  • "taskableInstruction": false
}
Response samples
application/json
{
  • "status": 0,
  • "message": "string",
  • "data": {
    }
}

Get the list of supercase documents

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

query Parameters
fetchDetails
boolean
Default: false

If true, returns a list of document objects, if false - a list of document IDs.

Responses
200

Success

get/supercases/{supercaseId}/documents
Response samples
application/json
[ ]

Associate documents with the supercase

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

Request Body schema: application/json
Array
string

A document descriptor ID.

Responses
204

Success

post/supercases/{supercaseId}/documents
Request samples
application/json
[
  • "string"
]

Set the documents associated with the supercase

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

Request Body schema: application/json
Array
string

A document descriptor ID.

Responses
204

Success

put/supercases/{supercaseId}/documents
Request samples
application/json
[
  • "string"
]

Update all sub-cases

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

Request Body schema: application/json
Any of:

Keyword parameters unique to bankruptcies.

externalId
string or null

A lender's identifier for a resource.

After the resource is successfully created, a lender can use the Peach assigned ID OR the externalId identifiers to fetch the resource.

Fetching with externalId:

To fetch a resource using an externalId, you MUST use the prefix ext- in the URL.

For example, a loan with an external identifier of ABCDE would be referenced like /api/people/BO-FAKE-IDNT/loans/ext-ABCDE.

Creating with externalId:

To create a resource with an external identifer, you MUST NOT use the prefix ext-.

For example, if the external identifier should be ABCDE, then pass { externalId: "ACBCE", ... } in the request body.

people
Array of strings

List of borrower IDs associated with case

name
string

The case name. If a name is not provided, the case name is taken from the case type. For example, Identity Theft.

caseType
string
Enum: "generic" "bankruptcy" "ceaseCommunication" "collection" "deceased" "disputeOfDebt" "federalEmergency" "identityTheft" "legalAction" "militaryDuty" "debtValidation" "oFACSanctionedIndividual" "disputeOfPurchase" "creditBureauDispute"
autoCreated
boolean

True if the case was created by some automated method—i.e., not by a human.

status
string (status)

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"
outcome
string or null (outcome)

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"
matchToDataSource
boolean or null

true if the person's details have been matched to an external data source.

object (matchDetails)

The fields that are for what levels the person is matched to a monitoring hit (ie bankruptcy)

lenderAck
boolean or null
Default: false

The lender has acknowledged the auto-generated case.

customFields
object or null (customFields)

Custom fields are JSON key-value mappings. They are described by a customFieldSchemas property in the corresponding caseType. This means that arbitrary fields cannot be added to in-flight cases.

metaData
object or null

Store any type of key/value pairs in the form of a JSON dictionary.

workflowId
string or null

The ID of the workflow instance assigned to this case.

escalatedTeamId
string or null

The ID of the Team to which the case should be escalated.

escalatedEmployeeId
string or null

The ID of the Employee to which the case should be escalated.

escalationIsUrgent
boolean or null

Boolean representing if this escalation is urgent. null if there is no escalation.

object or null

Object representing the last user and employee that viewed the case.

i.e., the user which last made the request: POST /api/people/{borrowerId}/cases/{caseId}/views

object or null

Object representing the last user and employee that updated a case or a case's subresources.

See lastSubresourceUpdatedAt for a description of subresources.

courtCaseFiledDate
string <date>

The bankruptcy court filing date. This is also when ‘automatic stay’ is invoked and creditors must stop calling borrowers or making attempts to collect on his or her debt.

courtCaseNumber
string

The unique identifier the courts use during the filing and review of the bankruptcy.

courtCaseChapter
string

The bankruptcy chapter code. One of four common types we support at this time.

Enum: "chapter7" "chapter11" "chapter12" "chapter13" "unknown"
courtCaseDebtorDisposition
string

The outcome of the bankruptcy case decided by the court.

Enum: "dismissed" "discharged" "reinstated"
courtCaseDebtorDispositionDate
string <date>

Date on which the disposition was decided by the court.

courtCaseLastStatus
string

The latest-reported bankruptcy case status, not case outcome, as it appears in the court.

Enum: "filed" "dismissed" "discharged" "conversion" "reinstated" "closedFiledInError" "closedTransferredOut" "closedDischargeNA" "closedUndeterminedReason"
courtCaseLastStatusUpdatedDate
string <date>

Date on which the latest status of the bankruptcy case was updated.

courtCaseClosedDate
string <date>

Date the bankruptcy case closed and the case is no longer on the court docket.

creditorClaimDeadlineDate
string or null <date>

The date a lender has to file a claim to be eligible for any bankruptcy proceeds.

anticipatedCaseCompletionDate
string or null <date>

In a bankruptcy chapter that leverages a reorganization and a new payment plan (i.e. Chapter 13), record when the last payment is expected to be received. This will trigger reminders to close out the case.

listedOutstandingDebt
boolean

When a bankruptcy is filed, the borrower lists all the creditors/loans he/she knows to be outstanding. Sometimes he/she may forget to list a loan/creditor, in which case the creditor may want to file a claim to ensure that the loan is added to the list of accounts to include in the bankruptcy.

Responses
202

Accepted

post/supercases/{supercaseId}/bulk-update
Request samples
application/json
{
  • "externalId": "string",
  • "people": [
    ],
  • "name": "string",
  • "caseType": "generic",
  • "autoCreated": true,
  • "status": "initiated",
  • "outcome": "approved",
  • "matchToDataSource": true,
  • "matchDetails": {
    },
  • "lenderAck": false,
  • "customFields": { },
  • "metaData": { },
  • "workflowId": "string",
  • "escalatedTeamId": "string",
  • "escalatedEmployeeId": "string",
  • "escalationIsUrgent": true,
  • "lastViewedBy": {
    },
  • "lastSubresourceUpdatedBy": {
    },
  • "courtCaseFiledDate": "2019-08-24",
  • "courtCaseNumber": "string",
  • "courtCaseChapter": "chapter7",
  • "courtCaseDebtorDisposition": "dismissed",
  • "courtCaseDebtorDispositionDate": "2019-08-24",
  • "courtCaseLastStatus": "filed",
  • "courtCaseLastStatusUpdatedDate": "2019-08-24",
  • "courtCaseClosedDate": "2019-08-24",
  • "creditorClaimDeadlineDate": "2019-08-24",
  • "anticipatedCaseCompletionDate": "2019-08-24",
  • "listedOutstandingDebt": true
}
Response samples
application/json
{
  • "status": 0,
  • "message": "string",
  • "data": {
    }
}

Send a message to the borrowers on all sub-cases

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

Request Body schema: application/json
subject
required
string

The subject of the interaction. This is relevant only if the interaction was rendered from a Peach template.

Enum: "annualPrivacyPolicyNotice" "autopayAgreement" "autopayAmountChanged" "autopayCanceledBySystem" "autopayEnabled" "autopayEnableReminder" "autopayPaymentCanceled" "autopayPaymentMethodUpdated" "autopayPaymentReminder" "autopayPaymentRescheduled" "cardExpiresReminder" "caseEscalation" "ceaseCommunicationAcknowledgement" "ceaseCommunicationRefuseToPay" "confirmationCode" "contactTakeover" "creditNegativeInfoReported" "creditPositiveInfoReported" "custom1" "custom2" "custom3" "custom4" "custom5" "custom6" "custom7" "custom8" "custom9" "custom10" "custom11" "custom12" "custom13" "custom14" "custom15" "custom16" "custom17" "custom18" "custom19" "custom20" "debtValidationNotice" "debtValidationNoticeArizona" "debtValidationNoticeAutomatic" "debtValidationNoticeNYCYonkers" "debtValidationNoticePuertoRico" "deceasedConfirmationOfPayoff" "deceasedNoticeToRepresentative" "deceasedNotificationUponDeath" "disputeOfDebtConfirmed" "disputeOfDebtSubmitDocumentation" "disputeOfDebtSubmitDocumentationReminder" "disputeOfDebtUnableToConfirm" "disputeOfDebtUnableToResolve" "documentUploadFailed" "downpaymentFailed" "electronicConsentOptOut" "freeForm" "freeFormBranded" "futurepayCanceled" "futurepayPaymentDueReminder" "identityTheftIncompleteDocumentation" "identityTheftNotValidated" "identityTheftSubmitDocumentation" "identityTheftSubmitDocumentationFirstReminder" "identityTheftSubmitDocumentationSecondReminder" "identityTheftValidated" "loanAccelerated" "loanCanceled" "loanChargedOffUnsecured" "loanDetails" "loanFeeCharged" "loanFreeze" "loanManualPaymentDisclosure" "loanOverdueFifthNotice" "loanOverdueFirstNotice" "loanOverdueFourthNotice" "loanOverdueSecondNotice" "loanOverdueSixthNotice" "loanOverdueThirdNotice" "loanPaidOff" "loanPaymentScheduleChanged" "loanPayoffStatement" "loanRefundProcessed" "loanRightToCurePersonalUnsecured" "loanTermsChangeAgreement" "loanUnfreeze" "locCreditLimitChanged" "locInterestRateChanged" "locLineClosed" "locStatementGenerated" "locStatementRegenerated" "loginFirstPaymentReminder" "microdepositFailed" "microdepositReminder" "oneTimeCode" "paydayConsumerRightsNotice" "paydayFirstPaymentWithdrawal" "paymentDueDateReminder" "paymentFailed" "paymentProcessing" "paymentReversalFailed" "paymentReversalProcessing" "paymentSuccessful" "payoffStatementDocument" "promoProgramCanceled" "promoProgramEligibilityAtRisk" "promoProgramExercised" "promoProgramReminder" "reimbursementFailed" "reimbursementProcessed" "reimbursementScheduled" "scraApplicationDenied" "scraBenefitsApplied" "scraBenefitsExpiringNotice" "scraCGFlaggedDocumentRequest" "scraServicemanNotifiedDocumentRequest" "settlementOffer" "settlementOfferFirstReminder" "statement" "statementLOC" "unmonitoredEmailAddress" "updateBankAccountConnection"
channel
string

The channel where interactions with a borrower occur. For example, an outbound call with a borrower is considered voice.

Enum: "voice" "email" "fax" "text" "chat" "mail" "gui" "document"
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.
  • Statements or payment reminders should be marked as outOpsLoan.
Enum: "opsCollDebt" "opsCollLocateBorrower" "opsCollVerifyEmployment" "opsCollContactEmployerNotice" "opsLoanTimeBarredNotice" "opsLoanValidationOfDebtNotice" "opsServicingDebtValidation" "opsServicingNegativeCreditReportNotice" "opsServicingTimeBarredNotice" "opsServicingVerificationOfDebt" "opsServicing" "opsAccountCredentials" "inbMissingFeature" "inbEducation" "inbBug" "inbRequest" "inbHumanLove" "inbUnknown" "inbOther"
context
object
isTransactional
boolean
attachments
Array of strings

An optional list of documents to attach to the outgoing email.

Responses
202

Accepted

post/supercases/{supercaseId}/bulk-send
Request samples
application/json
{
  • "subject": "annualPrivacyPolicyNotice",
  • "channel": "voice",
  • "theme": "opsCollDebt",
  • "context": { },
  • "isTransactional": true,
  • "attachments": [
    ]
}
Response samples
application/json
{
  • "status": 0,
  • "message": "string",
  • "data": {
    }
}

Send a message to the borrowers on all sub-cases of the population

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

populationId
required
string

The ID of the population

Request Body schema: application/json
subject
required
string

The subject of the interaction. This is relevant only if the interaction was rendered from a Peach template.

Enum: "annualPrivacyPolicyNotice" "autopayAgreement" "autopayAmountChanged" "autopayCanceledBySystem" "autopayEnabled" "autopayEnableReminder" "autopayPaymentCanceled" "autopayPaymentMethodUpdated" "autopayPaymentReminder" "autopayPaymentRescheduled" "cardExpiresReminder" "caseEscalation" "ceaseCommunicationAcknowledgement" "ceaseCommunicationRefuseToPay" "confirmationCode" "contactTakeover" "creditNegativeInfoReported" "creditPositiveInfoReported" "custom1" "custom2" "custom3" "custom4" "custom5" "custom6" "custom7" "custom8" "custom9" "custom10" "custom11" "custom12" "custom13" "custom14" "custom15" "custom16" "custom17" "custom18" "custom19" "custom20" "debtValidationNotice" "debtValidationNoticeArizona" "debtValidationNoticeAutomatic" "debtValidationNoticeNYCYonkers" "debtValidationNoticePuertoRico" "deceasedConfirmationOfPayoff" "deceasedNoticeToRepresentative" "deceasedNotificationUponDeath" "disputeOfDebtConfirmed" "disputeOfDebtSubmitDocumentation" "disputeOfDebtSubmitDocumentationReminder" "disputeOfDebtUnableToConfirm" "disputeOfDebtUnableToResolve" "documentUploadFailed" "downpaymentFailed" "electronicConsentOptOut" "freeForm" "freeFormBranded" "futurepayCanceled" "futurepayPaymentDueReminder" "identityTheftIncompleteDocumentation" "identityTheftNotValidated" "identityTheftSubmitDocumentation" "identityTheftSubmitDocumentationFirstReminder" "identityTheftSubmitDocumentationSecondReminder" "identityTheftValidated" "loanAccelerated" "loanCanceled" "loanChargedOffUnsecured" "loanDetails" "loanFeeCharged" "loanFreeze" "loanManualPaymentDisclosure" "loanOverdueFifthNotice" "loanOverdueFirstNotice" "loanOverdueFourthNotice" "loanOverdueSecondNotice" "loanOverdueSixthNotice" "loanOverdueThirdNotice" "loanPaidOff" "loanPaymentScheduleChanged" "loanPayoffStatement" "loanRefundProcessed" "loanRightToCurePersonalUnsecured" "loanTermsChangeAgreement" "loanUnfreeze" "locCreditLimitChanged" "locInterestRateChanged" "locLineClosed" "locStatementGenerated" "locStatementRegenerated" "loginFirstPaymentReminder" "microdepositFailed" "microdepositReminder" "oneTimeCode" "paydayConsumerRightsNotice" "paydayFirstPaymentWithdrawal" "paymentDueDateReminder" "paymentFailed" "paymentProcessing" "paymentReversalFailed" "paymentReversalProcessing" "paymentSuccessful" "payoffStatementDocument" "promoProgramCanceled" "promoProgramEligibilityAtRisk" "promoProgramExercised" "promoProgramReminder" "reimbursementFailed" "reimbursementProcessed" "reimbursementScheduled" "scraApplicationDenied" "scraBenefitsApplied" "scraBenefitsExpiringNotice" "scraCGFlaggedDocumentRequest" "scraServicemanNotifiedDocumentRequest" "settlementOffer" "settlementOfferFirstReminder" "statement" "statementLOC" "unmonitoredEmailAddress" "updateBankAccountConnection"
channel
string

The channel where interactions with a borrower occur. For example, an outbound call with a borrower is considered voice.

Enum: "voice" "email" "fax" "text" "chat" "mail" "gui" "document"
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.
  • Statements or payment reminders should be marked as outOpsLoan.
Enum: "opsCollDebt" "opsCollLocateBorrower" "opsCollVerifyEmployment" "opsCollContactEmployerNotice" "opsLoanTimeBarredNotice" "opsLoanValidationOfDebtNotice" "opsServicingDebtValidation" "opsServicingNegativeCreditReportNotice" "opsServicingTimeBarredNotice" "opsServicingVerificationOfDebt" "opsServicing" "opsAccountCredentials" "inbMissingFeature" "inbEducation" "inbBug" "inbRequest" "inbHumanLove" "inbUnknown" "inbOther"
context
object
isTransactional
boolean
attachments
Array of strings

An optional list of documents to attach to the outgoing email.

Responses
202

Accepted

post/supercases/{supercaseId}/populations/{populationId}/bulk-send
Request samples
application/json
{
  • "subject": "annualPrivacyPolicyNotice",
  • "channel": "voice",
  • "theme": "opsCollDebt",
  • "context": { },
  • "isTransactional": true,
  • "attachments": [
    ]
}
Response samples
application/json
{
  • "status": 0,
  • "message": "string",
  • "data": {
    }
}

Create Do Not Interact instances on all sub-cases

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

Request Body schema: application/json
channels
Array of strings

Channel(s) for which outbound interactions with a borrower are blocked. Use value all for all channels.

Items Enum: "all" "voice" "email" "fax" "text" "chat" "mail"
themes
Array of strings

Theme(s) for which outbound interactions with a borrower are blocked. Use value all for all themes. all doesn't include opsAccountCredentials. For example, use opsCollDebt to stop debt collection interactions.

Items Enum: "all" "opsCollDebt" "opsCollLocateBorrower" "opsCollVerifyEmployment" "opsCollContactEmployerNotice" "opsServicingDebtValidation" "opsServicingNegativeCreditReportNotice" "opsServicingTimeBarredNotice" "opsServicing"
endDate
string or null <date>

A future date when interaction restrictions will be lifted. The value format is date only, without time. If today is endDate, the restriction will remiain until the end of day in the product timezone. If no value is provided, doNotInteract will remain in effect until Remove do not interact is called or endDate is set to a date in the past.

daysOfWeek
Array of numbers <int32>

A list of days of week. Valid range is 1-7. 1=Monday...7=Sunday. For example: [1, 2, 4].

timezone
string

The time zone where the borrower is located. If provided, the time zone will be used for restriction. If not provided, the system will use the borrower's home address time zone.

Array of objects

A list of times of day in hours resolution.

contactLabels
Array of strings

A list of contact labels. A person's mobile phone is labeled as personal. A person's work phone is labeled as work. A person's home phone is labeled as home. A person's home address is labeled as home.

Items Enum: "personal" "home" "work" "military"
startDate
string <date>

The start date for blocking interactions with a borrower. The value format is date only, without time. The start date can be a future date. If the value is not provided, or equal to today's date, or a date in the past, then the doNotIteract will be effective as soon as we process the request.

Responses
202

Accepted

post/supercases/{supercaseId}/bulk-create-do-not-interact
Request samples
application/json
{
  • "channels": [
    ],
  • "themes": [
    ],
  • "endDate": "2019-08-24",
  • "daysOfWeek": [
    ],
  • "timezone": "string",
  • "timesOfDay": [
    ],
  • "contactLabels": [
    ],
  • "startDate": "2019-08-24"
}
Response samples
application/json
{
  • "status": 0,
  • "message": "string",
  • "data": {
    }
}

Delete supercase related Do Not Interact instances on all sub-cases

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

Responses
202

Accepted

post/supercases/{supercaseId}/bulk-delete-do-not-interact
Response samples
application/json
{
  • "status": 0,
  • "message": "string",
  • "data": {
    }
}

List bulk operations on this supercase

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

query Parameters
searchable
boolean
Default: false

If true, format the entire response as one suitable for an ElasticSearch search index.

limit
integer [ 1 .. 100 ]
Default: 25

The maximum count of results to retrieve.

startingAfter
string

Return results starting after the provided object identifier.

Responses
200

OK

get/supercases/{supercaseId}/bulk-operations
Response samples
application/json
{
  • "count": 0,
  • "data": [
    ]
}

Get super-case bulk operation by ID

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
supercaseId
required
string

The ID of the supercase

supercaseBulkOperationId
required
string

Supercase bulk operation ID

query Parameters
searchable
boolean
Default: false

If true, format the entire response as one suitable for an ElasticSearch search index.

Responses
200

OK

get/supercases/{supercaseId}/bulk-operations/{supercaseBulkOperationId}
Response samples
application/json
{
  • "id": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "deletedAt": "2019-08-24T14:15:22Z",
  • "supercaseId": "string",
  • "operationType": "update",
  • "completed": true,
  • "startedAt": "2019-08-24T14:15:22Z",
  • "finishedAt": "2019-08-24T14:15:22Z",
  • "casesProcessed": 0,
  • "casesFailed": 0,
  • "requestBody": { },
  • "errorLog": [ ]
}