API reference
Policy Engine
Your policy. Replayable. Open the product
GET/v1/decisioningOpen ↗
A lender’s own credit policy, versioned and replayable against the version that was in force on the day.
GET/v1/decisioning/policyOpen ↗
One of the example policies on this surface: every version, its dates, the hash of its rules, and every clause in it.
| Query | |
|---|---|
policy | which example policy: round-numbers, guideline-shaped — default round-numbers |
GET/v1/decisioning/replayOpen ↗
One application run against the policy in force on the day it was assessed and against the policy in force today, with every rule outcome and the evidence behind it.
| Query | |
|---|---|
income | monthly pay credited to the account, dollars |
other | monthly income of a kind that is not wages — rental, dividends, side work — dollars. |
rent | monthly rent, dollars |
everyday | monthly card spending on groceries, fuel and utilities, dollars |
gambling | monthly spending with a wagering operator, dollars |
benchmark | the lender’s own monthly expense benchmark for this household, dollars — supplied by the lender, because this repository holds no benchmark table |
declared | what the applicant said they spend each month, dollars |
debt | every debt the lender counts, including the loan applied for, dollars — one half of the debt-to-income ratio, which this software does not define |
gross | gross annual income before tax, dollars a year — the other half, and not a figure a bank statement carries |
amount | the amount applied for, dollars |
rate | the annual rate offered before the assessment buffer, per cent |
years | the term applied for, years |
on | the day the application was assessed, YYYY-MM-DD — which decides which version it is replayed against |
policy | which example policy to replay against: round-numbers, guideline-shaped — default round-numbers. |
POST/v1/decisioning/runKey
A lender’s own policy — its text, or a policy already sealed — read, sealed and run on one application as it stood on a day. Every rule’s outcome comes back with its reason; nothing is kept.
{policy: "policy text" | {id, versions: [...]}, application: {reading?, assessment?, proposal?, answers?, verification?, history?, smallAmount?}, on: "YYYY-MM-DD"}POST/v1/decisioning/shadowKey
A candidate policy run beside the current one on the same applications, and each set beside the conclusion a person recorded, so a change can be piloted before anybody relies on it.
{policy, candidate, on?, applications: [{application, on?, conclusion?, by?, applicant?}]}GET/v1/shadowOpen ↗
Run Creditcrest beside your own process before going live: your applications read, your policy and the Creditcrest Score run on them, and each set beside the decision you made.
POST/v1/shadowKey
Up to 50 of your applications, each with your own outcome: the statement read, your policy and the score run on it, and a sealed comparison of where Creditcrest’s reading and your decision agree and part, with the rules, figures and transactions behind each difference. A report over the batch comes with them.
| Body | |
|---|---|
applications | [{ reference, on?: "YYYY-MM-DD", statement, answers?, checks?, history?, commitment?, lender: { outcome, amount?, termMonths?, frequency?, reasons?, figures? |
statement | the CSV your applicant’s bank exported, as text or { "csv", "holders"? |
answers | the application’s answers by the question keys of Creditcrest’s application form (loan.amount, income.amount…) or their canonical names (requested_amount…) — optional; restricted answers are dropped unread |
checks | what your own checks found: identityVerified, contactVerified, age or dateOfBirth, residencyCriteriaMet, requirementsAndObjectivesMet, accountNameMatches, allIncomeAccountsIncluded |
history | "none" for a first loan with you, or { contracts, paidLate, dishonours, worstDaysPastDue, complete } |
lender.outcome | approved, declined, referred or withdrawn — yours; Creditcrest does not approve or decline |
lender.figures | { per: week | fortnight | month | year, income?, living?, housing?, credit?, commitments? |
policy | your policy’s text, optional: otherwise the one in your configuration, or Creditcrest’s starting policy |
products | your products, optional, in the shape of a lender’s configuration: the small and medium loan checks need them |
on | the day an application is assessed as, when it gives none; today in Sydney if left out |
setting | strict, balanced or broad, optional: how far each statement is read past the rules. |
POST/v1/shadow/reportKey
A report over comparisons you kept, for any period: agreement on outcome, the rules behind each difference, how far apart the figures were, the score beside your outcomes and what could not be read — each comparison’s seal checked first, and the report sealed.
| Body | |
|---|---|
comparisons | the comparisons as POST /v1/shadow returned them — up to 40000 |
from | YYYY-MM-DD, optional |
to | YYYY-MM-DD, optional |
GET/v1/l/:tenant/shadowKey
A shadow report over the comparisons kept in your own records service, for a period of up to 92 days: agreement with your outcomes, the rules behind each difference, the figures, the score and what could not be read, sealed.
| Query | |
|---|---|
from | YYYY-MM-DD; 29 days before "to" if left out |
to | YYYY-MM-DD; today in Sydney if left out |