diff --git a/packages/cli/openapi-ir-sdk/fern/definition/example.yml b/packages/cli/openapi-ir-sdk/fern/definition/example.yml
index 3f06fe55d22..46516549cbc 100644
--- a/packages/cli/openapi-ir-sdk/fern/definition/example.yml
+++ b/packages/cli/openapi-ir-sdk/fern/definition/example.yml
@@ -22,9 +22,10 @@ types:
float: double
double: double
string: string
- datetime: datetime
- date: date
- base64: base64
+ # typed as string to handle invalid datetime strings
+ datetime: string
+ date: string
+ base64: string
boolean: boolean
LiteralExample:
diff --git a/packages/cli/openapi-ir-sdk/src/sdk/api/resources/example/types/PrimitiveExample.ts b/packages/cli/openapi-ir-sdk/src/sdk/api/resources/example/types/PrimitiveExample.ts
index c772cbbcf6c..75c5f1e3335 100644
--- a/packages/cli/openapi-ir-sdk/src/sdk/api/resources/example/types/PrimitiveExample.ts
+++ b/packages/cli/openapi-ir-sdk/src/sdk/api/resources/example/types/PrimitiveExample.ts
@@ -43,7 +43,7 @@ export declare namespace PrimitiveExample {
interface Datetime extends _Utils {
type: "datetime";
- value: Date;
+ value: string;
}
interface Date_ extends _Utils {
@@ -71,7 +71,7 @@ export declare namespace PrimitiveExample {
float: (value: number) => _Result;
double: (value: number) => _Result;
string: (value: string) => _Result;
- datetime: (value: Date) => _Result;
+ datetime: (value: string) => _Result;
date: (value: string) => _Result;
base64: (value: string) => _Result;
boolean: (value: boolean) => _Result;
@@ -145,7 +145,7 @@ export const PrimitiveExample = {
};
},
- datetime: (value: Date): FernOpenapiIr.PrimitiveExample.Datetime => {
+ datetime: (value: string): FernOpenapiIr.PrimitiveExample.Datetime => {
return {
value: value,
type: "datetime",
diff --git a/packages/cli/openapi-ir-sdk/src/sdk/serialization/resources/example/types/PrimitiveExample.ts b/packages/cli/openapi-ir-sdk/src/sdk/serialization/resources/example/types/PrimitiveExample.ts
index d97669e7d4c..ca53c173820 100644
--- a/packages/cli/openapi-ir-sdk/src/sdk/serialization/resources/example/types/PrimitiveExample.ts
+++ b/packages/cli/openapi-ir-sdk/src/sdk/serialization/resources/example/types/PrimitiveExample.ts
@@ -27,7 +27,7 @@ export const PrimitiveExample: core.serialization.Schema<
value: core.serialization.string(),
}),
datetime: core.serialization.object({
- value: core.serialization.date(),
+ value: core.serialization.string(),
}),
date: core.serialization.object({
value: core.serialization.string(),
diff --git a/packages/cli/openapi-ir-to-fern/src/buildEndpointExample.ts b/packages/cli/openapi-ir-to-fern/src/buildEndpointExample.ts
index 6c4255c55d2..8d8c0796cd1 100644
--- a/packages/cli/openapi-ir-to-fern/src/buildEndpointExample.ts
+++ b/packages/cli/openapi-ir-to-fern/src/buildEndpointExample.ts
@@ -169,7 +169,7 @@ function convertPrimitive(primitiveExample: PrimitiveExample): RawSchemas.Exampl
case "datetime":
try {
// remove milliseconds from the datetime
- return primitiveExample.value.toISOString().replace(/\.\d{3}Z$/, "Z");
+ return new Date(primitiveExample.value).toISOString().replace(/\.\d{3}Z$/, "Z");
} catch (e) {
return "2024-01-15T09:30:00Z";
}
diff --git a/packages/cli/openapi-ir-to-fern/src/buildWebsocketSessionExample.ts b/packages/cli/openapi-ir-to-fern/src/buildWebsocketSessionExample.ts
index b12f34d79a9..1cedda1e22a 100644
--- a/packages/cli/openapi-ir-to-fern/src/buildWebsocketSessionExample.ts
+++ b/packages/cli/openapi-ir-to-fern/src/buildWebsocketSessionExample.ts
@@ -142,7 +142,7 @@ function convertPrimitive(primitiveExample: PrimitiveExample): RawSchemas.Exampl
case "datetime":
try {
// remove milliseconds from the datetime
- return primitiveExample.value.toISOString().replace(/\.\d{3}Z$/, "Z");
+ return new Date(primitiveExample.value).toISOString().replace(/\.\d{3}Z$/, "Z");
} catch (e) {
return "2024-01-15T09:30:00Z";
}
diff --git a/packages/cli/openapi-parser/src/__test__/__snapshots__/apiture.test.ts.snap b/packages/cli/openapi-parser/src/__test__/__snapshots__/apiture.test.ts.snap
index 515e087927a..a3f5bff3fca 100644
--- a/packages/cli/openapi-parser/src/__test__/__snapshots__/apiture.test.ts.snap
+++ b/packages/cli/openapi-parser/src/__test__/__snapshots__/apiture.test.ts.snap
@@ -1,3 +1,12719 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
-exports[`open api parser apiture parse open api 1`] = `Promise {}`;
+exports[`open api parser apiture parse open api 1`] = `
+{
+ "channel": [],
+ "description": "APIs for digital banking client applications.
+
+## Customer Accounts
+
+Customer-level API for listing banking accounts, balances, and other account-specific data.
+
+Clients may use this API to:
+
+ * [\`listAccounts\`](#op-listAccounts) - obtain a list of accounts that the authorized user has access to,
+ returning a [\`accounts\`](#schema-accounts) collection with a \`list\` of account objects.
+ * [\`listEligibleAchAccounts\`](#op-listEligibleAchAccounts) - obtain a list of ACH accounts that allow
+ transfers based on SEC code and authorized account privileges.
+ * [\`listAccountBalances\`](#op-listAccountBalances) - list the balances of the customer' accounts.
+ * [\`getAccount\`](#op-getAccount) - Fetch a more complete set of properties of an internal account.
+ * Manage overdraft protection:
+ * [\`listEligibleOverdraftAccounts\`](#op-listEligibleOverdraftAccounts) - List accounts which may be set as
+ overdraft protection accounts for another account.
+ * [\`getOverdraftProtection\`](#op-getOverdraftProtection) - fetch an account's overdraft protection settings.
+ * [\`patchOverdraftAccounts\`](#op-patchOverdraftAccounts) - update an account's overdraft protection settings.
+
+## Financial Institutions
+
+Operations related to bank and credit union financial institutions (FIs). This API provides the following features
+
+ 1. [Calculating upcoming dates](#op-listTransferSchedule) for transfer schedules, factoring in weekends, non-business days, and
+ banking holidays as determined by the institution,
+ 1. Provide a [list of transfer date restrictions](#op-getTransferDateRestrictions):
+ dates when users should not schedule transfers, based on transfer parameters,
+ 1. [Look up a financial institution](#op-lookUpInstitutionByLocator) by an FI locator value: either an ABA routing and transit number,
+ an IBAN account number, or a SWIFT/BIC code,
+ 1. [Fetching Cutoff times for FI money movement requests](#op-getCutoffTimes).
+
+Some of the operations in this API require an \`institutionId\` path parameter. This is the unique alphanumeric code that uniquely identifies a financial institution.
+
+## Account Transactions
+
+The Transactions API allows bank customers to view the transactions history associated with a banking account. The client may filter the transaction history by date, amount, transaction type, and other criteria. The transaction response is paginated since there may be many thousands of transactions for an account.
+
+Transactions have a \`type\` which indicates if the item is a balance transaction which establishes the account's balance, or a \`debit\`, or a \`credit\` transaction. Examples of debit transactions are checks drawn against an account, withdrawals, transfers from the account, fees, and adjustments. Examples of credit transactions are deposits, transfers to the account, interest, and adjustments. Check transactions include the check number and links to the check front and back images.
+
+Some transactions, such as ACH transfers or debit card payments, include information about the merchant, such as the merchant name, the merchant's website URL, and logo URL if available.
+
+Transactions also have a \`memo\` descriptive field which the customer can change. Each non-balance transaction can also be assigned to a _category_. The customer can edit their list of custom transaction categories. There is also a pre-defined list of fixed categories. (_Category management is to be designed._)
+
+**Note:** The financial institution may limit transaction history to the last 12 months of data.
+
+## Account to Account Transfers
+
+Schedule and manage account to account transfers.
+
+When creating new simple transfers, the source and target accounts, amount, and transfer schedule are required and the transfer is scheduled to be processed on the scheduled date. Some financial institutions support immediate transfers between local accounts scheduled on the current day. Transfers to or from external accounts typically are processed after the financial institution's ACH cut-off time but require several business days.
+
+Transfers have a [\`state\`](#schema-transferState) property which indicates if the transfer is pending, pending approvals, scheduled (queued for processing), processing, or processed.
+
+Transfers support recurring schedules, such as repeating every week or every month. Recurring transfers can also be variable transfers; they recur without an amount. Occasional recurring transfers do not have a scheduled date. Both of these situations result in transfers in a \`pending\` state. They remain pending until a [\`patchTransfer\`](#op-patchTransfer) operation sets the amount and schedule. Once a \`pending\` transfer has an amount and schedule, it becomes \`scheduled\`.",
+ "endpoints": [
+ {
+ "audiences": [],
+ "authed": true,
+ "availability": null,
+ "description": "Return a paginated list of the customer's accounts, consisting of internal accounts at this financial institution and accounts at other financial institutions, if any.",
+ "errorStatusCode": [
+ 400,
+ 401,
+ 403,
+ 422,
+ ],
+ "examples": [
+ {
+ "codeSamples": [],
+ "description": null,
+ "headers": [],
+ "name": null,
+ "pathParameters": [],
+ "queryParameters": [],
+ "request": null,
+ "response": {
+ "properties": {
+ "count": {
+ "type": "primitive",
+ "value": {
+ "type": "int",
+ "value": 1,
+ },
+ },
+ "items": {
+ "type": "array",
+ "value": [
+ {
+ "properties": {
+ "allows": {
+ "properties": {
+ "billPay": {
+ "type": "primitive",
+ "value": {
+ "type": "boolean",
+ "value": true,
+ },
+ },
+ "manageCards": {
+ "type": "primitive",
+ "value": {
+ "type": "boolean",
+ "value": true,
+ },
+ },
+ "mobileCheckDeposit": {
+ "type": "primitive",
+ "value": {
+ "type": "boolean",
+ "value": true,
+ },
+ },
+ "transferFrom": {
+ "type": "primitive",
+ "value": {
+ "type": "boolean",
+ "value": true,
+ },
+ },
+ "transferTo": {
+ "type": "primitive",
+ "value": {
+ "type": "boolean",
+ "value": true,
+ },
+ },
+ "view": {
+ "type": "primitive",
+ "value": {
+ "type": "boolean",
+ "value": true,
+ },
+ },
+ "viewCards": {
+ "type": "primitive",
+ "value": {
+ "type": "boolean",
+ "value": true,
+ },
+ },
+ },
+ "type": "object",
+ },
+ "id": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "id",
+ },
+ },
+ "label": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "Checking *1008",
+ },
+ },
+ "location": {
+ "type": "enum",
+ "value": "internal",
+ },
+ "maskedNumber": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "maskedNumber",
+ },
+ },
+ "nickname": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "Payroll Checking",
+ },
+ },
+ "product": {
+ "properties": {
+ "code": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "180D_CDA",
+ },
+ },
+ "description": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "Certificate of Deposit with a 180 day term",
+ },
+ },
+ "label": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "180 Day CD",
+ },
+ },
+ "type": {
+ "type": "enum",
+ "value": "cd",
+ },
+ },
+ "type": "object",
+ },
+ },
+ "type": "object",
+ },
+ ],
+ },
+ "limit": {
+ "type": "primitive",
+ "value": {
+ "type": "int",
+ "value": 1,
+ },
+ },
+ "nextPage_url": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "https://production.api.apiture.com/banking/accounts/bf23bc970b78d27691e8",
+ },
+ },
+ "primaryAccountId": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "primaryAccountId",
+ },
+ },
+ "start": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "start",
+ },
+ },
+ },
+ "type": "object",
+ },
+ },
+ ],
+ "generatedRequestName": "AccountsListAccountsRequest",
+ "headers": [],
+ "internal": null,
+ "method": "GET",
+ "operationId": null,
+ "path": "/accounts",
+ "pathParameters": [],
+ "queryParameters": [
+ {
+ "description": "Include only accounts whose \`product.type\` is in pipe-delimited set. For example, to list only savings, checking, and CD accounts, use
\`?productType=savings|checking|cd\`.",
+ "name": "productType",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "AccountsListAccountsRequestProductType",
+ "groupName": null,
+ "nameOverride": null,
+ "type": "nullable",
+ "value": {
+ "description": null,
+ "generatedName": "AccountsListAccountsRequestProductType",
+ "groupName": null,
+ "nameOverride": null,
+ "type": "array",
+ "value": {
+ "description": null,
+ "generatedName": "AccountsListAccountsRequestProductTypeItem",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "productType",
+ "type": "reference",
+ },
+ },
+ },
+ },
+ {
+ "description": "Filter accounts to just a subset of \`internal\` or \`external\` accounts (per the \`location\` property on the [\`accountItem\`](#schema-accountItem) schema).",
+ "name": "location",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "AccountsListAccountsRequestLocation",
+ "groupName": null,
+ "nameOverride": null,
+ "type": "nullable",
+ "value": {
+ "description": null,
+ "generatedName": "AccountsListAccountsRequestLocation",
+ "groupName": null,
+ "nameOverride": null,
+ "type": "enum",
+ "values": [
+ {
+ "casing": {
+ "camel": null,
+ "pascal": null,
+ "screamingSnake": null,
+ "snake": null,
+ },
+ "description": null,
+ "generatedName": "internal",
+ "nameOverride": null,
+ "value": "internal",
+ },
+ {
+ "casing": {
+ "camel": null,
+ "pascal": null,
+ "screamingSnake": null,
+ "snake": null,
+ },
+ "description": null,
+ "generatedName": "external",
+ "nameOverride": null,
+ "value": "external",
+ },
+ ],
+ },
+ },
+ },
+ {
+ "description": "Filter the result to accounts that have corresponding \`true\` values in \`account.allows\`. For example \`?allows=transferTo,transferFrom,view\` returns only accounts where \`account.allows.transferTo\`, \`account.allows.transferFrom\`, and \`account.allows.view\` are all \`true\` for the caller.",
+ "name": "allows",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "AccountsListAccountsRequestAllows",
+ "groupName": null,
+ "nameOverride": null,
+ "type": "nullable",
+ "value": {
+ "description": null,
+ "generatedName": "AccountsListAccountsRequestAllows",
+ "groupName": null,
+ "nameOverride": null,
+ "type": "array",
+ "value": {
+ "description": null,
+ "generatedName": "AccountsListAccountsRequestAllowsItem",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "accountAllowsFilter",
+ "type": "reference",
+ },
+ },
+ },
+ },
+ {
+ "description": "The location of the next item in the collection. This is an opaque cursor supplied by the API service. Omit this to start at the beginning of the collection. The client does not define this value; the API services automatically pass the \`?start=\` parameter on the \`nextPage_url\`.",
+ "name": "start",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "AccountsListAccountsRequestStart",
+ "groupName": null,
+ "nameOverride": null,
+ "type": "nullable",
+ "value": {
+ "description": null,
+ "generatedName": "AccountsListAccountsRequestStart",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": {
+ "maxLength": 256,
+ "minLength": null,
+ "type": "string",
+ },
+ "type": "primitive",
+ },
+ },
+ },
+ {
+ "description": "The maximum number of items to return in this paged response.",
+ "name": "limit",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "AccountsListAccountsRequestLimit",
+ "groupName": null,
+ "nameOverride": null,
+ "type": "nullable",
+ "value": {
+ "description": null,
+ "generatedName": "AccountsListAccountsRequestLimit",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": {
+ "type": "int",
+ },
+ "type": "primitive",
+ },
+ },
+ },
+ ],
+ "request": null,
+ "requestNameOverride": null,
+ "response": {
+ "description": "OK. A page from the full list of the customer's accounts. This list contains only accounts that the customer is entitled to access. While the \`nextPage_url\` property is present in the response, the client can fetch the next page of accounts by performing a \`GET\` on that URL.",
+ "responseProperty": null,
+ "schema": {
+ "description": null,
+ "generatedName": "AccountsListAccountsResponse",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "accounts",
+ "type": "reference",
+ },
+ "type": "json",
+ },
+ "sdkName": {
+ "groupName": [
+ "accounts",
+ ],
+ "methodName": "listAccounts",
+ },
+ "server": [],
+ "summary": "List Accounts",
+ "tags": [
+ "Accounts",
+ ],
+ },
+ {
+ "audiences": [],
+ "authed": true,
+ "availability": null,
+ "description": "Return details of the customer's internal account.",
+ "errorStatusCode": [
+ 401,
+ 403,
+ 404,
+ ],
+ "examples": [
+ {
+ "codeSamples": [],
+ "description": null,
+ "headers": [],
+ "name": null,
+ "pathParameters": [
+ {
+ "name": "accountId",
+ "value": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "accountId",
+ },
+ },
+ },
+ ],
+ "queryParameters": [],
+ "request": null,
+ "response": {
+ "properties": {
+ "allows": {
+ "properties": {
+ "billPay": {
+ "type": "primitive",
+ "value": {
+ "type": "boolean",
+ "value": true,
+ },
+ },
+ "manageCards": {
+ "type": "primitive",
+ "value": {
+ "type": "boolean",
+ "value": true,
+ },
+ },
+ "manageJointOwners": {
+ "type": "primitive",
+ "value": {
+ "type": "boolean",
+ "value": true,
+ },
+ },
+ "manageOverdraftAccounts": {
+ "type": "primitive",
+ "value": {
+ "type": "boolean",
+ "value": true,
+ },
+ },
+ "mobileCheckDeposit": {
+ "type": "primitive",
+ "value": {
+ "type": "boolean",
+ "value": true,
+ },
+ },
+ "transferFrom": {
+ "type": "primitive",
+ "value": {
+ "type": "boolean",
+ "value": true,
+ },
+ },
+ "transferTo": {
+ "type": "primitive",
+ "value": {
+ "type": "boolean",
+ "value": true,
+ },
+ },
+ "view": {
+ "type": "primitive",
+ "value": {
+ "type": "boolean",
+ "value": true,
+ },
+ },
+ "viewCards": {
+ "type": "primitive",
+ "value": {
+ "type": "boolean",
+ "value": true,
+ },
+ },
+ },
+ "type": "object",
+ },
+ "electronicStatements": {
+ "type": "primitive",
+ "value": {
+ "type": "boolean",
+ "value": true,
+ },
+ },
+ "id": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "id",
+ },
+ },
+ "label": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "Checking *1008",
+ },
+ },
+ "location": {
+ "type": "enum",
+ "value": "internal",
+ },
+ "maskedNumber": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "maskedNumber",
+ },
+ },
+ "nickname": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "Payroll Checking",
+ },
+ },
+ "product": {
+ "properties": {
+ "code": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "180D_CDA",
+ },
+ },
+ "description": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "Certificate of Deposit with a 180 day term",
+ },
+ },
+ "label": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "180 Day CD",
+ },
+ },
+ "type": {
+ "type": "enum",
+ "value": "cd",
+ },
+ },
+ "type": "object",
+ },
+ },
+ "type": "object",
+ },
+ },
+ ],
+ "generatedRequestName": "AccountsGetAccountRequest",
+ "headers": [],
+ "internal": null,
+ "method": "GET",
+ "operationId": null,
+ "path": "/accounts/{accountId}",
+ "pathParameters": [
+ {
+ "description": "The unique identifier of this account resource. This is an opaque string.",
+ "name": "accountId",
+ "schema": {
+ "description": null,
+ "generatedName": "AccountsGetAccountRequestAccountId",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "resourceId",
+ "type": "reference",
+ },
+ "variableReference": null,
+ },
+ ],
+ "queryParameters": [],
+ "request": null,
+ "requestNameOverride": null,
+ "response": {
+ "description": "OK. The response is a representation of the customer's account.",
+ "responseProperty": null,
+ "schema": {
+ "description": null,
+ "generatedName": "AccountsGetAccountResponse",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "account",
+ "type": "reference",
+ },
+ "type": "json",
+ },
+ "sdkName": {
+ "groupName": [
+ "accounts",
+ ],
+ "methodName": "getAccount",
+ },
+ "server": [],
+ "summary": "Get an Account",
+ "tags": [
+ "Accounts",
+ ],
+ },
+ {
+ "audiences": [],
+ "authed": true,
+ "availability": null,
+ "description": "Return a list of the requested internal accounts' balances. The \`accounts\` query parameter is a list of account IDs which typically comes from the \`getAccounts\` operation response. The returned list does not include external accounts. The caller must have entitlements to view each account's details, as indicated by a \`true\` value for \`account.allows.view\`. Requests to list balances for accounts the user is not allowed to read results in a 403 Forbidden response.
+
+The response may be incomplete. Given a \`Retry-After\` response header, the client can retry the operation after a short delay, requesting only the accounts which are incomplete; see the 202 Accepted response for details.",
+ "errorStatusCode": [
+ 401,
+ 403,
+ 422,
+ 429,
+ 503,
+ ],
+ "examples": [
+ {
+ "codeSamples": [],
+ "description": null,
+ "headers": [],
+ "name": null,
+ "pathParameters": [],
+ "queryParameters": [],
+ "request": null,
+ "response": {
+ "properties": {
+ "items": {
+ "type": "array",
+ "value": [
+ {
+ "properties": {
+ "available": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "3208.20",
+ },
+ },
+ "current": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "3448.72",
+ },
+ },
+ "currentWithPending": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "3448.72",
+ },
+ },
+ "id": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "05d00d7d-d630",
+ },
+ },
+ "incomplete": {
+ "type": "primitive",
+ "value": {
+ "type": "boolean",
+ "value": false,
+ },
+ },
+ "updatedAt": {
+ "type": "primitive",
+ "value": {
+ "type": "datetime",
+ "value": "2022-05-02T06:51:19.375Z",
+ },
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "available": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "1750.80",
+ },
+ },
+ "current": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "1956.19",
+ },
+ },
+ "currentWithPending": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "1956.19",
+ },
+ },
+ "id": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "cb5d67ea-a5c3",
+ },
+ },
+ "incomplete": {
+ "type": "primitive",
+ "value": {
+ "type": "boolean",
+ "value": false,
+ },
+ },
+ "updatedAt": {
+ "type": "primitive",
+ "value": {
+ "type": "datetime",
+ "value": "2022-05-02T06:51:19.375Z",
+ },
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "available": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "3456.78",
+ },
+ },
+ "current": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "3456.78",
+ },
+ },
+ "currentWithPending": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "3456.78",
+ },
+ },
+ "id": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "id",
+ },
+ },
+ "incomplete": {
+ "type": "primitive",
+ "value": {
+ "type": "boolean",
+ "value": true,
+ },
+ },
+ "updatedAt": {
+ "type": "primitive",
+ "value": {
+ "type": "datetime",
+ "value": "2021-10-30T19:06:04.250Z",
+ },
+ },
+ },
+ "type": "object",
+ },
+ ],
+ },
+ },
+ "type": "object",
+ },
+ },
+ ],
+ "generatedRequestName": "AccountsListAccountBalancesRequest",
+ "headers": [],
+ "internal": null,
+ "method": "GET",
+ "operationId": null,
+ "path": "/accountBalances",
+ "pathParameters": [],
+ "queryParameters": [
+ {
+ "description": "The unique account identifiers of one or more internal accounts. (Internal accounts are those with \`location\` value of \`internal\`.) If omitted, this operation uses the accounts for which the customer has view permissions but is limited to at most 1000 accounts. Note: The account IDs are unrelated to the account number.",
+ "name": "accounts",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "AccountsListAccountBalancesRequestAccounts",
+ "groupName": null,
+ "nameOverride": null,
+ "type": "nullable",
+ "value": {
+ "description": null,
+ "generatedName": "AccountsListAccountBalancesRequestAccounts",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "accountIds",
+ "type": "reference",
+ },
+ },
+ },
+ {
+ "description": "When retrying the operation, pass the \`retryCount\` from the \`incompleteAccountBalances\` response.",
+ "name": "retryCount",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "AccountsListAccountBalancesRequestRetryCount",
+ "groupName": null,
+ "nameOverride": null,
+ "type": "nullable",
+ "value": {
+ "description": null,
+ "generatedName": "AccountsListAccountBalancesRequestRetryCount",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": {
+ "type": "int",
+ },
+ "type": "primitive",
+ },
+ },
+ },
+ ],
+ "request": null,
+ "requestNameOverride": null,
+ "response": {
+ "description": "OK. The response contains the balances for all the accounts in the \`?accounts=\` query parameter.",
+ "responseProperty": null,
+ "schema": {
+ "description": null,
+ "generatedName": "AccountsListAccountBalancesResponse",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "accountBalances",
+ "type": "reference",
+ },
+ "type": "json",
+ },
+ "sdkName": {
+ "groupName": [
+ "accounts",
+ ],
+ "methodName": "listAccountBalances",
+ },
+ "server": [],
+ "summary": "List Account Balances",
+ "tags": [
+ "Accounts",
+ ],
+ },
+ {
+ "audiences": [],
+ "authed": true,
+ "availability": null,
+ "description": "Return a collection of account joint owners. The user must have the \`account.manageJointOwners\` permission to use this operation.",
+ "errorStatusCode": [
+ 400,
+ 401,
+ 403,
+ 404,
+ ],
+ "examples": [
+ {
+ "codeSamples": [],
+ "description": null,
+ "headers": [],
+ "name": null,
+ "pathParameters": [
+ {
+ "name": "accountId",
+ "value": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "accountId",
+ },
+ },
+ },
+ ],
+ "queryParameters": [],
+ "request": null,
+ "response": {
+ "properties": {
+ "items": {
+ "type": "array",
+ "value": [
+ {
+ "properties": {
+ "id": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "0399abed-fd3d",
+ },
+ },
+ "name": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "Max Pike",
+ },
+ },
+ },
+ "type": "object",
+ },
+ ],
+ },
+ },
+ "type": "object",
+ },
+ },
+ ],
+ "generatedRequestName": "AccountJointOwnersListAccountJointOwnersRequest",
+ "headers": [],
+ "internal": null,
+ "method": "GET",
+ "operationId": null,
+ "path": "/accounts/{accountId}/jointOwners",
+ "pathParameters": [
+ {
+ "description": "The unique identifier of this account resource. This is an opaque string.",
+ "name": "accountId",
+ "schema": {
+ "description": null,
+ "generatedName": "AccountJointOwnersListAccountJointOwnersRequestAccountId",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "resourceId",
+ "type": "reference",
+ },
+ "variableReference": null,
+ },
+ ],
+ "queryParameters": [],
+ "request": null,
+ "requestNameOverride": null,
+ "response": {
+ "description": "OK.",
+ "responseProperty": null,
+ "schema": {
+ "description": null,
+ "generatedName": "AccountJointOwnersListAccountJointOwnersResponse",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "accountJointOwners",
+ "type": "reference",
+ },
+ "type": "json",
+ },
+ "sdkName": {
+ "groupName": [
+ "accountJointOwners",
+ ],
+ "methodName": "listAccountJointOwners",
+ },
+ "server": [],
+ "summary": "Return a collection of account joint owners",
+ "tags": [
+ "Account Joint Owners",
+ ],
+ },
+ {
+ "audiences": [],
+ "authed": true,
+ "availability": null,
+ "description": "Return a paginated list of a customer's accounts that are eligible for ACH transfers based on allowed privileges.
+
+Optionally, an agent can access a business customer's ACH accounts when acting on behalf of that business customer via the optional \`customerId\` query parameter.",
+ "errorStatusCode": [
+ 400,
+ 401,
+ 403,
+ 422,
+ ],
+ "examples": [],
+ "generatedRequestName": "AccountsListEligibleAchAccountsRequest",
+ "headers": [],
+ "internal": null,
+ "method": "GET",
+ "operationId": null,
+ "path": "/achEligibleAccounts",
+ "pathParameters": [],
+ "queryParameters": [
+ {
+ "description": "Filter the result to accounts that have corresponding \`true\` values in \`account.allows\`. For example \`?allows=transferTo,transferFrom,view\` returns only accounts where \`account.allows.transferTo\`, \`account.allows.transferFrom\`, and \`account.allows.view\` are all \`true\` for the caller.",
+ "name": "allows",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "AccountsListEligibleAchAccountsRequestAllows",
+ "groupName": null,
+ "nameOverride": null,
+ "type": "array",
+ "value": {
+ "description": null,
+ "generatedName": "AccountsListEligibleAchAccountsRequestAllowsItem",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "accountAllowsFilter",
+ "type": "reference",
+ },
+ },
+ },
+ {
+ "description": "Filter the result to accounts that allow ACH transfers of the given Standard Entry Class (SEC) codes.",
+ "name": "secCode",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "AccountsListEligibleAchAccountsRequestSecCode",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "achSecCode",
+ "type": "reference",
+ },
+ },
+ {
+ "description": "The optional identifier of a business customer. This is an opaque string. An agent who is operating on behalf of a business can use this to access the resources of that business customer. The agent must have entitlements to act on behalf of the business; if not, the operation returns a 403 Forbidden response. For other situations, omit this value, else this _must_ match the authenticated caller's customer ID (not their access ID).",
+ "name": "customerId",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "AccountsListEligibleAchAccountsRequestCustomerId",
+ "groupName": null,
+ "nameOverride": null,
+ "type": "nullable",
+ "value": {
+ "description": null,
+ "generatedName": "AccountsListEligibleAchAccountsRequestCustomerId",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "resourceId",
+ "type": "reference",
+ },
+ },
+ },
+ {
+ "description": "The location of the next item in the collection. This is an opaque cursor supplied by the API service. Omit this to start at the beginning of the collection. The client does not define this value; the API services automatically pass the \`?start=\` parameter on the \`nextPage_url\`.",
+ "name": "start",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "AccountsListEligibleAchAccountsRequestStart",
+ "groupName": null,
+ "nameOverride": null,
+ "type": "nullable",
+ "value": {
+ "description": null,
+ "generatedName": "AccountsListEligibleAchAccountsRequestStart",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": {
+ "maxLength": 256,
+ "minLength": null,
+ "type": "string",
+ },
+ "type": "primitive",
+ },
+ },
+ },
+ {
+ "description": "The maximum number of items to return in this paged response.",
+ "name": "limit",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "AccountsListEligibleAchAccountsRequestLimit",
+ "groupName": null,
+ "nameOverride": null,
+ "type": "nullable",
+ "value": {
+ "description": null,
+ "generatedName": "AccountsListEligibleAchAccountsRequestLimit",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": {
+ "type": "int",
+ },
+ "type": "primitive",
+ },
+ },
+ },
+ ],
+ "request": null,
+ "requestNameOverride": null,
+ "response": {
+ "description": "OK. A page from the full list of the customer's ACH-eligible accounts. This list contains only accounts that the customer is entitled to access. While the \`nextPage_url\` property is present in the response, the client can fetch the next page of accounts by performing a \`GET\` on that URL.",
+ "responseProperty": null,
+ "schema": {
+ "description": null,
+ "generatedName": "AccountsListEligibleAchAccountsResponse",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "accounts",
+ "type": "reference",
+ },
+ "type": "json",
+ },
+ "sdkName": {
+ "groupName": [
+ "accounts",
+ ],
+ "methodName": "listEligibleAchAccounts",
+ },
+ "server": [],
+ "summary": "List Eligible ACH Accounts",
+ "tags": [
+ "Accounts",
+ ],
+ },
+ {
+ "audiences": [],
+ "authed": true,
+ "availability": null,
+ "description": "Return a paginated list of a customer's accounts that are eligible to serve as overdraft protection accounts for the given account. An overdraft protection account is a deposit account that the financial institution can transfer funds from to prevent the account balance from going negative and incurring non-sufficient funds fees.
+
+The user must have the \`allows.manageOverdraftAccounts\` permission on the account to use this operation.
+
+To obtain available balances for these accounts, use [\`listAccountBalances\`](#op-listAccountBalances).",
+ "errorStatusCode": [
+ 400,
+ 401,
+ 403,
+ 404,
+ 422,
+ ],
+ "examples": [
+ {
+ "codeSamples": [],
+ "description": null,
+ "headers": [],
+ "name": null,
+ "pathParameters": [
+ {
+ "name": "accountId",
+ "value": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "accountId",
+ },
+ },
+ },
+ ],
+ "queryParameters": [],
+ "request": null,
+ "response": {
+ "properties": {
+ "items": {
+ "type": "unknown",
+ "value": {
+ "type": "map",
+ "value": [
+ {
+ "key": {
+ "type": "string",
+ "value": "0",
+ },
+ "value": {
+ "type": "map",
+ "value": [
+ {
+ "key": {
+ "type": "string",
+ "value": "id",
+ },
+ "value": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "da1331a9e9168ea91346",
+ },
+ },
+ },
+ {
+ "key": {
+ "type": "string",
+ "value": "label",
+ },
+ "value": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "Checking *3456",
+ },
+ },
+ },
+ {
+ "key": {
+ "type": "string",
+ "value": "maskedNumber",
+ },
+ "value": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "*3456",
+ },
+ },
+ },
+ ],
+ },
+ },
+ {
+ "key": {
+ "type": "string",
+ "value": "1",
+ },
+ "value": {
+ "type": "map",
+ "value": [
+ {
+ "key": {
+ "type": "string",
+ "value": "id",
+ },
+ "value": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "5c9b4e50a0401ef4eb2e",
+ },
+ },
+ },
+ {
+ "key": {
+ "type": "string",
+ "value": "label",
+ },
+ "value": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "Premiere Savings *1234",
+ },
+ },
+ },
+ {
+ "key": {
+ "type": "string",
+ "value": "maskedNumber",
+ },
+ "value": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "*1234",
+ },
+ },
+ },
+ ],
+ },
+ },
+ ],
+ },
+ },
+ "limit": {
+ "type": "primitive",
+ "value": {
+ "type": "int",
+ "value": 100,
+ },
+ },
+ "maximumOverdraftAccounts": {
+ "type": "primitive",
+ "value": {
+ "type": "int",
+ "value": 1,
+ },
+ },
+ "nextPage_url": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "https://production.api.apiture.com/banking/accounts/f204d292df9fb/eligibleOverdraftAccounts?start=641f62296ecbf1882c84?limit=100",
+ },
+ },
+ "start": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "start",
+ },
+ },
+ },
+ "type": "object",
+ },
+ },
+ ],
+ "generatedRequestName": "OverdraftProtectionListEligibleOverdraftAccountsRequest",
+ "headers": [],
+ "internal": null,
+ "method": "GET",
+ "operationId": null,
+ "path": "/accounts/{accountId}/eligibleOverdraftAccounts",
+ "pathParameters": [
+ {
+ "description": "The unique identifier of this account resource. This is an opaque string.",
+ "name": "accountId",
+ "schema": {
+ "description": null,
+ "generatedName": "OverdraftProtectionListEligibleOverdraftAccountsRequestAccountId",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "resourceId",
+ "type": "reference",
+ },
+ "variableReference": null,
+ },
+ ],
+ "queryParameters": [
+ {
+ "description": "The location of the next item in the collection. This is an opaque cursor supplied by the API service. Omit this to start at the beginning of the collection. The client does not define this value; the API services automatically pass the \`?start=\` parameter on the \`nextPage_url\`.",
+ "name": "start",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "OverdraftProtectionListEligibleOverdraftAccountsRequestStart",
+ "groupName": null,
+ "nameOverride": null,
+ "type": "nullable",
+ "value": {
+ "description": null,
+ "generatedName": "OverdraftProtectionListEligibleOverdraftAccountsRequestStart",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": {
+ "maxLength": 256,
+ "minLength": null,
+ "type": "string",
+ },
+ "type": "primitive",
+ },
+ },
+ },
+ {
+ "description": "The maximum number of items to return in this paged response.",
+ "name": "limit",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "OverdraftProtectionListEligibleOverdraftAccountsRequestLimit",
+ "groupName": null,
+ "nameOverride": null,
+ "type": "nullable",
+ "value": {
+ "description": null,
+ "generatedName": "OverdraftProtectionListEligibleOverdraftAccountsRequestLimit",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": {
+ "type": "int",
+ },
+ "type": "primitive",
+ },
+ },
+ },
+ ],
+ "request": null,
+ "requestNameOverride": null,
+ "response": {
+ "description": "OK. A page from the full list of the customer's eligible overdraft accounts. This list contains only accounts that the customer is entitled to access. While the \`nextPage_url\` property is present in the response, the client can fetch the next page of accounts by performing a \`GET\` on that URL.",
+ "responseProperty": null,
+ "schema": {
+ "description": null,
+ "generatedName": "OverdraftProtectionListEligibleOverdraftAccountsResponse",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "eligibleOverdraftAccounts",
+ "type": "reference",
+ },
+ "type": "json",
+ },
+ "sdkName": {
+ "groupName": [
+ "overdraftProtection",
+ ],
+ "methodName": "listEligibleOverdraftAccounts",
+ },
+ "server": [],
+ "summary": "List Eligible Overdraft Accounts",
+ "tags": [
+ "Overdraft Protection",
+ ],
+ },
+ {
+ "audiences": [],
+ "authed": true,
+ "availability": null,
+ "description": "Return the JSON representation of this account's overdraft protection settings.",
+ "errorStatusCode": [
+ 401,
+ 403,
+ 404,
+ ],
+ "examples": [
+ {
+ "codeSamples": [],
+ "description": null,
+ "headers": [],
+ "name": null,
+ "pathParameters": [
+ {
+ "name": "accountId",
+ "value": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "accountId",
+ },
+ },
+ },
+ ],
+ "queryParameters": [],
+ "request": null,
+ "response": {
+ "properties": {
+ "accounts": {
+ "type": "map",
+ "value": [
+ {
+ "key": {
+ "type": "string",
+ "value": "key",
+ },
+ "value": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "value",
+ },
+ },
+ },
+ ],
+ },
+ "maximumOverdraftAccounts": {
+ "type": "primitive",
+ "value": {
+ "type": "int",
+ "value": 1,
+ },
+ },
+ },
+ "type": "object",
+ },
+ },
+ ],
+ "generatedRequestName": "OverdraftProtectionGetOverdraftProtectionRequest",
+ "headers": [],
+ "internal": null,
+ "method": "GET",
+ "operationId": null,
+ "path": "/accounts/{accountId}/overdraftProtection",
+ "pathParameters": [
+ {
+ "description": "The unique identifier of this account resource. This is an opaque string.",
+ "name": "accountId",
+ "schema": {
+ "description": null,
+ "generatedName": "OverdraftProtectionGetOverdraftProtectionRequestAccountId",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "resourceId",
+ "type": "reference",
+ },
+ "variableReference": null,
+ },
+ ],
+ "queryParameters": [],
+ "request": null,
+ "requestNameOverride": null,
+ "response": {
+ "description": "OK.",
+ "responseProperty": null,
+ "schema": {
+ "description": null,
+ "generatedName": "OverdraftProtectionGetOverdraftProtectionResponse",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "overdraftProtection",
+ "type": "reference",
+ },
+ "type": "json",
+ },
+ "sdkName": {
+ "groupName": [
+ "overdraftProtection",
+ ],
+ "methodName": "getOverdraftProtection",
+ },
+ "server": [],
+ "summary": "Fetch a representation of the account's overdraft protection settings",
+ "tags": [
+ "Overdraft Protection",
+ ],
+ },
+ {
+ "audiences": [],
+ "authed": true,
+ "availability": null,
+ "description": "Perform a partial update of the overdraft accounts. Only fields in the request body are updated on the resource; fields which are omitted are not updated. To add, replace, or remove an overdraft account, add, replace, or remove the corresponding account item from the \`items\` array. Only the account \`id\` in the items is significant.
+
+The user must have the \`allows.manageOverdraftAccounts\` permission on the account to use this operation.",
+ "errorStatusCode": [
+ 400,
+ 401,
+ 403,
+ 404,
+ 422,
+ ],
+ "examples": [
+ {
+ "codeSamples": [],
+ "description": null,
+ "headers": [],
+ "name": null,
+ "pathParameters": [
+ {
+ "name": "accountId",
+ "value": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "accountId",
+ },
+ },
+ },
+ ],
+ "queryParameters": [],
+ "request": {
+ "properties": {},
+ "type": "object",
+ },
+ "response": {
+ "properties": {
+ "accounts": {
+ "type": "map",
+ "value": [
+ {
+ "key": {
+ "type": "string",
+ "value": "key",
+ },
+ "value": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "value",
+ },
+ },
+ },
+ ],
+ },
+ "maximumOverdraftAccounts": {
+ "type": "primitive",
+ "value": {
+ "type": "int",
+ "value": 1,
+ },
+ },
+ },
+ "type": "object",
+ },
+ },
+ ],
+ "generatedRequestName": "OverdraftProtectionPatchOverdraftAccountsRequest",
+ "headers": [],
+ "internal": null,
+ "method": "PATCH",
+ "operationId": null,
+ "path": "/accounts/{accountId}/overdraftProtection",
+ "pathParameters": [
+ {
+ "description": "The unique identifier of this account resource. This is an opaque string.",
+ "name": "accountId",
+ "schema": {
+ "description": null,
+ "generatedName": "OverdraftProtectionPatchOverdraftAccountsRequestAccountId",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "resourceId",
+ "type": "reference",
+ },
+ "variableReference": null,
+ },
+ ],
+ "queryParameters": [],
+ "request": {
+ "contentType": null,
+ "description": null,
+ "schema": {
+ "description": null,
+ "generatedName": "OverdraftProtectionPatchOverdraftAccountsRequest",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "overdraftProtectionPatch",
+ "type": "reference",
+ },
+ "type": "json",
+ },
+ "requestNameOverride": null,
+ "response": {
+ "description": "OK.",
+ "responseProperty": null,
+ "schema": {
+ "description": null,
+ "generatedName": "OverdraftProtectionPatchOverdraftAccountsResponse",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "overdraftProtection",
+ "type": "reference",
+ },
+ "type": "json",
+ },
+ "sdkName": {
+ "groupName": [
+ "overdraftProtection",
+ ],
+ "methodName": "patchOverdraftAccounts",
+ },
+ "server": [],
+ "summary": "Update the overdraft accounts",
+ "tags": [
+ "Overdraft Protection",
+ ],
+ },
+ {
+ "audiences": [],
+ "authed": true,
+ "availability": null,
+ "description": "Create and send an invitation to another person to become a joint owner of the account. The invitation will be sent to the invitee's email address. The invitation directs the invitee to a web page to verify and accept the invitation, and if necessary, enroll in digital banking.
+
+The authenticated user must have the \`account.allows.manageJointOwners\` permission to use this operation.",
+ "errorStatusCode": [
+ 400,
+ 401,
+ 403,
+ 404,
+ 422,
+ ],
+ "examples": [
+ {
+ "codeSamples": [],
+ "description": null,
+ "headers": [],
+ "name": null,
+ "pathParameters": [
+ {
+ "name": "accountId",
+ "value": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "accountId",
+ },
+ },
+ },
+ ],
+ "queryParameters": [],
+ "request": {
+ "properties": {
+ "disallowDebitCardAccess": {
+ "type": "primitive",
+ "value": {
+ "type": "boolean",
+ "value": false,
+ },
+ },
+ "emailAddress": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "Mary.Jones@example.com",
+ },
+ },
+ "firstName": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "Mary",
+ },
+ },
+ "lastName": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "Jones",
+ },
+ },
+ "sharedSecret": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "obsolete obese octopus",
+ },
+ },
+ },
+ "type": "object",
+ },
+ "response": {
+ "properties": {
+ "disallowDebitCardAccess": {
+ "type": "primitive",
+ "value": {
+ "type": "boolean",
+ "value": false,
+ },
+ },
+ "emailAddress": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "Mary.Jones@example.com",
+ },
+ },
+ "firstName": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "Mary",
+ },
+ },
+ "id": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "db4f580290d3e07bf55d",
+ },
+ },
+ "lastName": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "Jones",
+ },
+ },
+ "sharedSecret": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "obsolete obese octopus",
+ },
+ },
+ "taxId": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "taxId",
+ },
+ },
+ },
+ "type": "object",
+ },
+ },
+ ],
+ "generatedRequestName": "JointOwnersCreateJointOwnerInvitationRequest",
+ "headers": [],
+ "internal": null,
+ "method": "POST",
+ "operationId": null,
+ "path": "/accounts/{accountId}/jointOwnerInvitations",
+ "pathParameters": [
+ {
+ "description": "The unique identifier of this account resource. This is an opaque string.",
+ "name": "accountId",
+ "schema": {
+ "description": null,
+ "generatedName": "JointOwnersCreateJointOwnerInvitationRequestAccountId",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "resourceId",
+ "type": "reference",
+ },
+ "variableReference": null,
+ },
+ ],
+ "queryParameters": [],
+ "request": {
+ "contentType": null,
+ "description": null,
+ "schema": {
+ "description": null,
+ "generatedName": "JointOwnersCreateJointOwnerInvitationRequest",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "newJointOwnerInvitation",
+ "type": "reference",
+ },
+ "type": "json",
+ },
+ "requestNameOverride": null,
+ "response": {
+ "description": "OK.",
+ "responseProperty": null,
+ "schema": {
+ "description": null,
+ "generatedName": "JointOwnersCreateJointOwnerInvitationResponse",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "jointOwnerInvitation",
+ "type": "reference",
+ },
+ "type": "json",
+ },
+ "sdkName": {
+ "groupName": [
+ "jointOwners",
+ ],
+ "methodName": "createJointOwnerInvitation",
+ },
+ "server": [],
+ "summary": "Invite a joint owner",
+ "tags": [
+ "Account Joint Owners",
+ ],
+ },
+ {
+ "audiences": [],
+ "authed": true,
+ "availability": null,
+ "description": "Look up a financial institution by their country code and either [American Bankers Association routing number](https://www.aba.com/about-us/routing-number), by [International Bank Account Number (IBAN)](https://www.ecbs.org/iban.htm), or by [SWIFT Business Identifier Code (BIC) code](https://www.swift.com/standards/data-standards/bic-business-identifier-code). Optionally, include a list of intermediary institutions that may be necessary to complete international wire transfers.",
+ "errorStatusCode": [
+ 400,
+ 401,
+ 403,
+ 422,
+ ],
+ "examples": [
+ {
+ "codeSamples": [],
+ "description": null,
+ "headers": [],
+ "name": null,
+ "pathParameters": [],
+ "queryParameters": [
+ {
+ "name": "locator",
+ "value": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "locator",
+ },
+ },
+ },
+ {
+ "name": "locatorType",
+ "value": {
+ "type": "enum",
+ "value": "abaRoutingNumber",
+ },
+ },
+ {
+ "name": "countryCode",
+ "value": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "countryCode",
+ },
+ },
+ },
+ ],
+ "request": null,
+ "response": {
+ "properties": {
+ "found": {
+ "type": "primitive",
+ "value": {
+ "type": "boolean",
+ "value": true,
+ },
+ },
+ "institution": {
+ "properties": {
+ "address": {
+ "properties": {
+ "address1": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "239 West Princess Ave.",
+ },
+ },
+ "address2": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "Building 14, Suite 1500",
+ },
+ },
+ "countryCode": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "US",
+ },
+ },
+ "locality": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "Andalasia",
+ },
+ },
+ "postalCode": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "28407",
+ },
+ },
+ "regionCode": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "NC",
+ },
+ },
+ "regionName": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "regionName",
+ },
+ },
+ },
+ "type": "object",
+ },
+ "locator": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "503000196",
+ },
+ },
+ "locatorType": {
+ "type": "enum",
+ "value": "abaRoutingNumber",
+ },
+ "name": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "First Bank of Andalasia",
+ },
+ },
+ },
+ "type": "object",
+ },
+ "intermediaryInstitutions": {
+ "type": "array",
+ "value": [
+ {
+ "properties": {
+ "address": {
+ "properties": {
+ "address1": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "239 West Princess Ave.",
+ },
+ },
+ "address2": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "Building 14, Suite 1500",
+ },
+ },
+ "countryCode": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "US",
+ },
+ },
+ "locality": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "Andalasia",
+ },
+ },
+ "postalCode": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "28407",
+ },
+ },
+ "regionCode": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "NC",
+ },
+ },
+ },
+ "type": "object",
+ },
+ "locator": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "503000196",
+ },
+ },
+ "locatorType": {
+ "type": "enum",
+ "value": "abaRoutingNumber",
+ },
+ "name": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "First Bank of Andalasia",
+ },
+ },
+ },
+ "type": "object",
+ },
+ ],
+ },
+ },
+ "type": "object",
+ },
+ },
+ ],
+ "generatedRequestName": "InstitutionsLookUpInstitutionByLocatorRequest",
+ "headers": [],
+ "internal": null,
+ "method": "GET",
+ "operationId": null,
+ "path": "/institutionByLocator",
+ "pathParameters": [],
+ "queryParameters": [
+ {
+ "description": "The financial institution lookup key (routing number, IBAN, or SWIFT/BIC), as indicated by the \`locatorType\` query parameter.",
+ "name": "locator",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "InstitutionsLookUpInstitutionByLocatorRequestLocator",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": {
+ "maxLength": 36,
+ "minLength": null,
+ "type": "string",
+ },
+ "type": "primitive",
+ },
+ },
+ {
+ "description": "Indicates what type of value the \`locator\` query parameter is.",
+ "name": "locatorType",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "InstitutionsLookUpInstitutionByLocatorRequestLocatorType",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "institutionLocatorType",
+ "type": "reference",
+ },
+ },
+ {
+ "description": "The country code in which to search for institutions. For the US, the \`locatorType\` must be \`abaRoutingNumber\`. For non-US countries, the \`locatorType\` must be \`swiftBicCode\` or \`ibanAccountNumber\`.",
+ "name": "countryCode",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": "The [ISO-3611 alpha-2](https://www.iso.org/glossary-for-iso-3166.html) value for the country associated with the financial institution.",
+ "generatedName": "InstitutionsLookUpInstitutionByLocatorRequestCountryCode",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": {
+ "maxLength": 2,
+ "minLength": 2,
+ "type": "string",
+ },
+ "type": "primitive",
+ },
+ },
+ {
+ "description": "If looking up a beneficiary institution for a wire transfer beneficiary institution, request the response also include a list of intermediary institutions.",
+ "name": "includeIntermediaryInstitutions",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "InstitutionsLookUpInstitutionByLocatorRequestIncludeIntermediaryInstitutions",
+ "groupName": null,
+ "nameOverride": null,
+ "type": "nullable",
+ "value": {
+ "description": null,
+ "generatedName": "InstitutionsLookUpInstitutionByLocatorRequestIncludeIntermediaryInstitutions",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": {
+ "type": "boolean",
+ },
+ "type": "primitive",
+ },
+ },
+ },
+ ],
+ "request": null,
+ "requestNameOverride": null,
+ "response": {
+ "description": "OK.",
+ "responseProperty": null,
+ "schema": {
+ "description": null,
+ "generatedName": "InstitutionsLookUpInstitutionByLocatorResponse",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "institutionLookupResult",
+ "type": "reference",
+ },
+ "type": "json",
+ },
+ "sdkName": {
+ "groupName": [
+ "institutions",
+ ],
+ "methodName": "lookUpInstitutionByLocator",
+ },
+ "server": [],
+ "summary": "Look up institution by routing number, IBAN, or SWIFT/BIC code",
+ "tags": [
+ "Institutions",
+ ],
+ },
+ {
+ "audiences": [],
+ "authed": true,
+ "availability": null,
+ "description": "Return a transfer schedule list for this institution.",
+ "errorStatusCode": [
+ 400,
+ 401,
+ 403,
+ 404,
+ 422,
+ ],
+ "examples": [
+ {
+ "codeSamples": [],
+ "description": null,
+ "headers": [],
+ "name": null,
+ "pathParameters": [
+ {
+ "name": "institutionId",
+ "value": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "TIBURON",
+ },
+ },
+ },
+ ],
+ "queryParameters": [
+ {
+ "name": "startsOn",
+ "value": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-04",
+ },
+ },
+ },
+ {
+ "name": "endsOn",
+ "value": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-04",
+ },
+ },
+ },
+ {
+ "name": "direction",
+ "value": {
+ "type": "enum",
+ "value": "debit",
+ },
+ },
+ {
+ "name": "frequency",
+ "value": {
+ "type": "enum",
+ "value": "once",
+ },
+ },
+ ],
+ "request": null,
+ "response": {
+ "properties": {
+ "items": {
+ "type": "array",
+ "value": [
+ {
+ "properties": {
+ "effectiveOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-06-27",
+ },
+ },
+ "scheduledOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-06-27",
+ },
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "effectiveOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "scheduledOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-04",
+ },
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "effectiveOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-11",
+ },
+ },
+ "scheduledOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-11",
+ },
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "effectiveOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-18",
+ },
+ },
+ "scheduledOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-18",
+ },
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "effectiveOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-25",
+ },
+ },
+ "scheduledOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-25",
+ },
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "effectiveOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-01",
+ },
+ },
+ "scheduledOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-08-01",
+ },
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "effectiveOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "scheduledOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-04",
+ },
+ },
+ },
+ "type": "object",
+ },
+ ],
+ },
+ },
+ "type": "object",
+ },
+ },
+ ],
+ "generatedRequestName": "InstitutionsListTransferScheduleRequest",
+ "headers": [],
+ "internal": null,
+ "method": "GET",
+ "operationId": null,
+ "path": "/institutions/{institutionId}/transferSchedule",
+ "pathParameters": [
+ {
+ "description": "The unique identifier of a financial institution.",
+ "name": "institutionId",
+ "schema": {
+ "description": null,
+ "generatedName": "InstitutionsListTransferScheduleRequestInstitutionId",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "institutionId",
+ "type": "reference",
+ },
+ "variableReference": null,
+ },
+ ],
+ "queryParameters": [
+ {
+ "description": "The date to use to begin calculations of the transfer schedule in \`YYYY-MM-DD\` [RFC 3339](https://tools.ietf.org/html/rfc3339) date format.",
+ "name": "startsOn",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "InstitutionsListTransferScheduleRequestStartsOn",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": {
+ "maxLength": null,
+ "minLength": null,
+ "type": "string",
+ },
+ "type": "primitive",
+ },
+ },
+ {
+ "description": "The date to use to conclude calculations of the transfer schedule in \`YYYY-MM-DD\` [RFC 3339](https://tools.ietf.org/html/rfc3339) date format.",
+ "name": "endsOn",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "InstitutionsListTransferScheduleRequestEndsOn",
+ "groupName": null,
+ "nameOverride": null,
+ "type": "nullable",
+ "value": {
+ "description": null,
+ "generatedName": "InstitutionsListTransferScheduleRequestEndsOn",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": {
+ "maxLength": null,
+ "minLength": null,
+ "type": "string",
+ },
+ "type": "primitive",
+ },
+ },
+ },
+ {
+ "description": "The direction of the transfer from the institution to the customer used for adjusting transfer dates due to banking holidays. For \`debit\`, dates are adjusted to the next business day. For \`credit\`, dates are adjusted to the previous business day.",
+ "name": "direction",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "InstitutionsListTransferScheduleRequestDirection",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "transferScheduleDirection",
+ "type": "reference",
+ },
+ },
+ {
+ "description": "The maximum amount of dates to calculate and include in the response. If an end date is provided, the total count may be lower than the requested count.",
+ "name": "count",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "InstitutionsListTransferScheduleRequestCount",
+ "groupName": null,
+ "nameOverride": null,
+ "type": "nullable",
+ "value": {
+ "description": null,
+ "generatedName": "InstitutionsListTransferScheduleRequestCount",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": {
+ "type": "int",
+ },
+ "type": "primitive",
+ },
+ },
+ },
+ {
+ "description": "The interval at which the money movement recurs.",
+ "name": "frequency",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "InstitutionsListTransferScheduleRequestFrequency",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "transferFrequency",
+ "type": "reference",
+ },
+ },
+ ],
+ "request": null,
+ "requestNameOverride": null,
+ "response": {
+ "description": "OK.",
+ "responseProperty": null,
+ "schema": {
+ "description": null,
+ "generatedName": "InstitutionsListTransferScheduleResponse",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "transferSchedules",
+ "type": "reference",
+ },
+ "type": "json",
+ },
+ "sdkName": {
+ "groupName": [
+ "institutions",
+ ],
+ "methodName": "listTransferSchedule",
+ },
+ "server": [],
+ "summary": "Return this institution's list of upcoming transfer schedule dates",
+ "tags": [
+ "Schedules",
+ ],
+ },
+ {
+ "audiences": [],
+ "authed": true,
+ "availability": null,
+ "description": "Return daily cutoff times for different money movement processes at a financial institution. Money movement requests (account to account transfers, ACH, wire transfers, etc.) must be submitted before the cutoff time in order for the financial institution to begin processing the request that day. Some [cutoff time types](#schema-cutoffTimeType) may have multiple cutoff times per day.
+
+Cutoff times are very slowly changing data. This is a _conditional operation_ when the \`If-None-Match\` header is used. If the client has a \`getCutoffTimes\` response and the \`ETag\` returned from a previous call to this operation, this operation returns a 304 Not Modified when called again if the cutoff times have not changed.",
+ "errorStatusCode": [
+ 400,
+ 401,
+ 403,
+ 404,
+ 412,
+ 422,
+ ],
+ "examples": [
+ {
+ "codeSamples": [],
+ "description": null,
+ "headers": [],
+ "name": null,
+ "pathParameters": [
+ {
+ "name": "institutionId",
+ "value": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "TIBURON",
+ },
+ },
+ },
+ ],
+ "queryParameters": [],
+ "request": null,
+ "response": {
+ "properties": {
+ "items": {
+ "type": "array",
+ "value": [
+ {
+ "properties": {
+ "time": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "13:45",
+ },
+ },
+ "type": {
+ "type": "enum",
+ "value": "ach",
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "time": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "16:45",
+ },
+ },
+ "type": {
+ "type": "enum",
+ "value": "ach",
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "time": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "16:45",
+ },
+ },
+ "type": {
+ "type": "enum",
+ "value": "sameDayAch",
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "time": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "16:45",
+ },
+ },
+ "type": {
+ "type": "enum",
+ "value": "domesticWireTransfer",
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "time": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "16:45",
+ },
+ },
+ "type": {
+ "type": "enum",
+ "value": "ach",
+ },
+ },
+ "type": "object",
+ },
+ ],
+ },
+ "timeZoneId": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "America/New_York",
+ },
+ },
+ },
+ "type": "object",
+ },
+ },
+ ],
+ "generatedRequestName": "InstitutionsGetCutoffTimesRequest",
+ "headers": [
+ {
+ "description": "The entity tag that was returned in the \`ETag\` response header of a previous call. If the resource's current entity tag value matches this header value, the \`GET\` will return 304 (Not Modified) and no response body, else the current resource representation and updated \`ETag\` is returned.",
+ "name": "If-None-Match",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "InstitutionsGetCutoffTimesRequestIfNoneMatch",
+ "groupName": null,
+ "nameOverride": null,
+ "type": "nullable",
+ "value": {
+ "description": null,
+ "generatedName": "InstitutionsGetCutoffTimesRequestIfNoneMatch",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": {
+ "maxLength": 512,
+ "minLength": null,
+ "type": "string",
+ },
+ "type": "primitive",
+ },
+ },
+ },
+ ],
+ "internal": null,
+ "method": "GET",
+ "operationId": null,
+ "path": "/institutions/{institutionId}/cutoffTimes",
+ "pathParameters": [
+ {
+ "description": "The unique identifier of a financial institution.",
+ "name": "institutionId",
+ "schema": {
+ "description": null,
+ "generatedName": "InstitutionsGetCutoffTimesRequestInstitutionId",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "institutionId",
+ "type": "reference",
+ },
+ "variableReference": null,
+ },
+ ],
+ "queryParameters": [
+ {
+ "description": "Identifies the time zone for formatting time values in the response. If omitted, time values are formatting in the local timezone of the financial institution.",
+ "name": "timeZoneId",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "InstitutionsGetCutoffTimesRequestTimeZoneId",
+ "groupName": null,
+ "nameOverride": null,
+ "type": "nullable",
+ "value": {
+ "description": null,
+ "generatedName": "InstitutionsGetCutoffTimesRequestTimeZoneId",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "timeZoneId",
+ "type": "reference",
+ },
+ },
+ },
+ ],
+ "request": null,
+ "requestNameOverride": null,
+ "response": {
+ "description": "OK.",
+ "responseProperty": null,
+ "schema": {
+ "description": null,
+ "generatedName": "InstitutionsGetCutoffTimesResponse",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "cutoffTimes",
+ "type": "reference",
+ },
+ "type": "json",
+ },
+ "sdkName": {
+ "groupName": [
+ "institutions",
+ ],
+ "methodName": "getCutoffTimes",
+ },
+ "server": [],
+ "summary": "Return the financial institution's cutoff times for products",
+ "tags": [
+ "Schedules",
+ ],
+ },
+ {
+ "audiences": [],
+ "authed": true,
+ "availability": null,
+ "description": "Return the transfer date restrictions for a date range and transfer parameters. The result is a list of days and dates that the financial institution does not allow scheduling specific types of transfers.
+
+This information provides hints to clients, allowing bank customers to select transfer dates from a calendar picker. However, these dates are not strictly enforced; a transfer can still be scheduled to occur on restricted dates but the financial institution may shift the date when funds are drafted to account for holidays, closures, or to adjust based on the risk level of the funding account.",
+ "errorStatusCode": [
+ 400,
+ 401,
+ 403,
+ 404,
+ 422,
+ ],
+ "examples": [
+ {
+ "codeSamples": [],
+ "description": null,
+ "headers": [],
+ "name": null,
+ "pathParameters": [
+ {
+ "name": "institutionId",
+ "value": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "TIBURON",
+ },
+ },
+ },
+ ],
+ "queryParameters": [
+ {
+ "name": "startsOn",
+ "value": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-04",
+ },
+ },
+ },
+ {
+ "name": "endsOn",
+ "value": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-04",
+ },
+ },
+ },
+ ],
+ "request": null,
+ "response": {
+ "properties": {
+ "accuracyEndsOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2026-12-31T00:00:00.000Z",
+ },
+ },
+ "restrictedDates": {
+ "type": "array",
+ "value": [
+ {
+ "properties": {
+ "creditOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "debitOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "occursOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-10-01",
+ },
+ },
+ "reason": {
+ "type": "enum",
+ "value": "pastDate",
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "creditOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "debitOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "occursOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-10-02",
+ },
+ },
+ "reason": {
+ "type": "enum",
+ "value": "pastDate",
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "creditOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "debitOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "occursOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-10-03",
+ },
+ },
+ "reason": {
+ "type": "enum",
+ "value": "pastDate",
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "creditOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "debitOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "occursOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-10-04",
+ },
+ },
+ "reason": {
+ "type": "enum",
+ "value": "pastDate",
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "creditOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "debitOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "occursOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-10-05",
+ },
+ },
+ "reason": {
+ "type": "enum",
+ "value": "pastCutoffTime",
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "creditOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "debitOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "occursOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-10-06",
+ },
+ },
+ "reason": {
+ "type": "enum",
+ "value": "riskRestricted",
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "creditOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "debitOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "occursOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-10-07",
+ },
+ },
+ "reason": {
+ "type": "enum",
+ "value": "riskRestricted",
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "creditOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "debitOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "occursOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-10-08",
+ },
+ },
+ "reason": {
+ "type": "enum",
+ "value": "closure",
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "creditOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "debitOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "occursOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-10-09",
+ },
+ },
+ "reason": {
+ "type": "enum",
+ "value": "closure",
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "creditOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "debitOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "occursOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-10-10",
+ },
+ },
+ "reason": {
+ "type": "enum",
+ "value": "holiday",
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "creditOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "debitOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "occursOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-10-15",
+ },
+ },
+ "reason": {
+ "type": "enum",
+ "value": "closure",
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "creditOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "debitOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "occursOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-10-16",
+ },
+ },
+ "reason": {
+ "type": "enum",
+ "value": "closure",
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "creditOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "debitOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "occursOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-10-22",
+ },
+ },
+ "reason": {
+ "type": "enum",
+ "value": "closure",
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "creditOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "debitOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "occursOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-10-23",
+ },
+ },
+ "reason": {
+ "type": "enum",
+ "value": "closure",
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "creditOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "debitOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "occursOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-10-29",
+ },
+ },
+ "reason": {
+ "type": "enum",
+ "value": "closure",
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "creditOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "debitOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "occursOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-10-30",
+ },
+ },
+ "reason": {
+ "type": "enum",
+ "value": "closure",
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "creditOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-07-05",
+ },
+ },
+ "debitOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-10-07",
+ },
+ },
+ "occursOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2022-10-10",
+ },
+ },
+ "reason": {
+ "type": "enum",
+ "value": "holiday",
+ },
+ },
+ "type": "object",
+ },
+ ],
+ },
+ },
+ "type": "object",
+ },
+ },
+ ],
+ "generatedRequestName": "InstitutionsGetTransferDateRestrictionsRequest",
+ "headers": [],
+ "internal": null,
+ "method": "GET",
+ "operationId": null,
+ "path": "/institutions/{institutionId}/transferDateRestrictions",
+ "pathParameters": [
+ {
+ "description": "The unique identifier of a financial institution.",
+ "name": "institutionId",
+ "schema": {
+ "description": null,
+ "generatedName": "InstitutionsGetTransferDateRestrictionsRequestInstitutionId",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "institutionId",
+ "type": "reference",
+ },
+ "variableReference": null,
+ },
+ ],
+ "queryParameters": [
+ {
+ "description": "The start of the range of dates to include in the response, in \`YYYY-MM-DD\` [RFC 3339](https://tools.ietf.org/html/rfc3339) date format. While start dates far in the future are allowed, bank holiday schedules are only available for a small number of years ahead. The default is the current date.",
+ "name": "startsOn",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "InstitutionsGetTransferDateRestrictionsRequestStartsOn",
+ "groupName": null,
+ "nameOverride": null,
+ "type": "nullable",
+ "value": {
+ "description": null,
+ "generatedName": "InstitutionsGetTransferDateRestrictionsRequestStartsOn",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": {
+ "maxLength": null,
+ "minLength": null,
+ "type": "string",
+ },
+ "type": "primitive",
+ },
+ },
+ },
+ {
+ "description": "The end of the range of dates to include in the response. in \`YYYY-MM-DD\` [RFC 3339](https://tools.ietf.org/html/rfc3339) date format. The default is at least one year from the \`startOn\` date and is limited to a four year interval.",
+ "name": "endsOn",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "InstitutionsGetTransferDateRestrictionsRequestEndsOn",
+ "groupName": null,
+ "nameOverride": null,
+ "type": "nullable",
+ "value": {
+ "description": null,
+ "generatedName": "InstitutionsGetTransferDateRestrictionsRequestEndsOn",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": {
+ "maxLength": null,
+ "minLength": null,
+ "type": "string",
+ },
+ "type": "primitive",
+ },
+ },
+ },
+ {
+ "description": "Describes the type of transfer. This determines what business rules and adjustments to make to the date restrictions. Note ACH transfers (including CTX and PPD), that \`Credit\` and \`Debit\` here are relative to the account at the _external_ financial institution.",
+ "name": "type",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "InstitutionsGetTransferDateRestrictionsRequestType",
+ "groupName": null,
+ "nameOverride": null,
+ "type": "nullable",
+ "value": {
+ "description": null,
+ "generatedName": "InstitutionsGetTransferDateRestrictionsRequestType",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "transferTypeForDateRestrictions",
+ "type": "reference",
+ },
+ },
+ },
+ {
+ "description": "The primary account's risk level. This determines what business rules and adjustments to make to the date restrictions. This parameter only applies to ACH credit transfers (funds credited to an external account) and is ignored for others.",
+ "name": "risk",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "InstitutionsGetTransferDateRestrictionsRequestRisk",
+ "groupName": null,
+ "nameOverride": null,
+ "type": "nullable",
+ "value": {
+ "description": null,
+ "generatedName": "InstitutionsGetTransferDateRestrictionsRequestRisk",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "achAccountRisk",
+ "type": "reference",
+ },
+ },
+ },
+ ],
+ "request": null,
+ "requestNameOverride": null,
+ "response": {
+ "description": "OK.",
+ "responseProperty": null,
+ "schema": {
+ "description": null,
+ "generatedName": "InstitutionsGetTransferDateRestrictionsResponse",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "transferDateRestrictions",
+ "type": "reference",
+ },
+ "type": "json",
+ },
+ "sdkName": {
+ "groupName": [
+ "institutions",
+ ],
+ "methodName": "getTransferDateRestrictions",
+ },
+ "server": [],
+ "summary": "Return the financial institution's transfer dates restrictions",
+ "tags": [
+ "Schedules",
+ ],
+ },
+ {
+ "audiences": [],
+ "authed": true,
+ "availability": null,
+ "description": "Return a [paginated](https://dx.apiture.com/docs/api-documentation/concepts/pagination) collection of transaction history for this internal account. The [\`nextPage_url\`](https://dx.apiture.com/docs/api-documentation/concepts/links) link in the response, if present, is a pagination link to the next page of transactions for the given filters.
+
+This operation returns a 403 Forbidden error if the customer does not have \`view\` permissions in the \`account.allows\` object, or a 422 Unprocessable Entity if called on an external account.
+
+The default response lists only recent transactions. Normally, this is transactions for the most recent 30 days, although for high-volume accounts, it may be a shorter period.",
+ "errorStatusCode": [
+ 400,
+ 401,
+ 403,
+ 404,
+ 422,
+ 429,
+ 504,
+ ],
+ "examples": [
+ {
+ "codeSamples": [],
+ "description": null,
+ "headers": [],
+ "name": null,
+ "pathParameters": [
+ {
+ "name": "accountId",
+ "value": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "accountId",
+ },
+ },
+ },
+ ],
+ "queryParameters": [],
+ "request": null,
+ "response": {
+ "properties": {
+ "count": {
+ "type": "primitive",
+ "value": {
+ "type": "int",
+ "value": 2381,
+ },
+ },
+ "items": {
+ "type": "array",
+ "value": [
+ {
+ "properties": {
+ "amount": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "0.00",
+ },
+ },
+ "balance": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "8509.38",
+ },
+ },
+ "category": {
+ "properties": {
+ "id": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "id",
+ },
+ },
+ "label": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "label",
+ },
+ },
+ },
+ "type": "object",
+ },
+ "check": {
+ "properties": {
+ "number": {
+ "type": "primitive",
+ "value": {
+ "type": "int",
+ "value": 1,
+ },
+ },
+ },
+ "type": "object",
+ },
+ "createdOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2023-05-18",
+ },
+ },
+ "description": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "description",
+ },
+ },
+ "id": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "d62c0701-0d74",
+ },
+ },
+ "memo": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "memo",
+ },
+ },
+ "occurredOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2023-06-18",
+ },
+ },
+ "posted": {
+ "type": "primitive",
+ "value": {
+ "type": "boolean",
+ "value": true,
+ },
+ },
+ "postedOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2023-05-18",
+ },
+ },
+ "subtype": {
+ "type": "enum",
+ "value": "check",
+ },
+ "type": {
+ "type": "enum",
+ "value": "balance",
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "amount": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "1276.21",
+ },
+ },
+ "balance": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "8509.38",
+ },
+ },
+ "category": {
+ "properties": {
+ "id": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "127",
+ },
+ },
+ "label": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "Utilities",
+ },
+ },
+ },
+ "type": "object",
+ },
+ "check": {
+ "properties": {
+ "imageBack_url": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "/accounts/1d16e438-18e0/transactions/88f5bf17-ecc4/images/back/content",
+ },
+ },
+ "imageFront_url": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "/accounts/1d16e438-18e0/transactions/88f5bf17-ecc4/images/front/content",
+ },
+ },
+ "number": {
+ "type": "primitive",
+ "value": {
+ "type": "int",
+ "value": 8412,
+ },
+ },
+ },
+ "type": "object",
+ },
+ "createdOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2023-05-18",
+ },
+ },
+ "description": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "description",
+ },
+ },
+ "id": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "88f5bf17-ecc4",
+ },
+ },
+ "memo": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "Paid electric bill",
+ },
+ },
+ "merchant": {
+ "properties": {
+ "logo_url": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "https://BillTedsExcellentElectricCompany.example.com/img/logos/medium.png",
+ },
+ },
+ "name": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "B&T's Excellent Electric Co.",
+ },
+ },
+ "website_url": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "https://BillTedsExcellentElectricCompany.example.com/",
+ },
+ },
+ },
+ "type": "object",
+ },
+ "occurredOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2023-06-18",
+ },
+ },
+ "posted": {
+ "type": "primitive",
+ "value": {
+ "type": "boolean",
+ "value": true,
+ },
+ },
+ "postedOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2023-05-18",
+ },
+ },
+ "subtype": {
+ "type": "enum",
+ "value": "check",
+ },
+ "type": {
+ "type": "enum",
+ "value": "debit",
+ },
+ },
+ "type": "object",
+ },
+ {
+ "properties": {
+ "amount": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "1276.21",
+ },
+ },
+ "balance": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "8509.38",
+ },
+ },
+ "category": {
+ "properties": {
+ "id": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "127",
+ },
+ },
+ "label": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "Utilities",
+ },
+ },
+ },
+ "type": "object",
+ },
+ "check": {
+ "properties": {
+ "imageBack_url": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "/accounts/1d16e438-18e0/transactions/88f5bf17-ecc4/images/back/content",
+ },
+ },
+ "imageFront_url": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "/accounts/1d16e438-18e0/transactions/88f5bf17-ecc4/images/front/content",
+ },
+ },
+ "number": {
+ "type": "primitive",
+ "value": {
+ "type": "int",
+ "value": 8412,
+ },
+ },
+ },
+ "type": "object",
+ },
+ "createdOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2023-05-18",
+ },
+ },
+ "description": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "description",
+ },
+ },
+ "id": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "88f5bf17-ecc4",
+ },
+ },
+ "memo": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "Paid electric bill",
+ },
+ },
+ "merchant": {
+ "properties": {
+ "logo_url": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "https://BillTedsExcellentElectricCompany.example.com/img/logos/medium.png",
+ },
+ },
+ "name": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "B&T's Excellent Electric Co.",
+ },
+ },
+ "website_url": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "https://BillTedsExcellentElectricCompany.example.com/",
+ },
+ },
+ },
+ "type": "object",
+ },
+ "occurredOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2023-05-18",
+ },
+ },
+ "posted": {
+ "type": "primitive",
+ "value": {
+ "type": "boolean",
+ "value": true,
+ },
+ },
+ "postedOn": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "2023-05-18",
+ },
+ },
+ "subtype": {
+ "type": "enum",
+ "value": "check",
+ },
+ "type": {
+ "type": "enum",
+ "value": "debit",
+ },
+ },
+ "type": "object",
+ },
+ ],
+ },
+ "limit": {
+ "type": "primitive",
+ "value": {
+ "type": "int",
+ "value": 10,
+ },
+ },
+ "nextPage_url": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "https://production.api.apiture.com/banking/accounts/c9fc25b47d52916fc9ad/transactions?start=6117a4dcefb841cab7316cef1ac8b58c&limit=10",
+ },
+ },
+ "start": {
+ "type": "primitive",
+ "value": {
+ "type": "string",
+ "value": "d1b48af913464aa49fcb07065dcc0616",
+ },
+ },
+ },
+ "type": "object",
+ },
+ },
+ ],
+ "generatedRequestName": "TransactionsListTransactionsRequest",
+ "headers": [],
+ "internal": null,
+ "method": "GET",
+ "operationId": null,
+ "path": "/accounts/{accountId}/transactions",
+ "pathParameters": [
+ {
+ "description": "The unique identifier of this account resource. This is an opaque string.",
+ "name": "accountId",
+ "schema": {
+ "description": null,
+ "generatedName": "TransactionsListTransactionsRequestAccountId",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": "resourceId",
+ "type": "reference",
+ },
+ "variableReference": null,
+ },
+ ],
+ "queryParameters": [
+ {
+ "description": "The location of the next item in the collection. This is an opaque cursor supplied by the API service. Omit this to start at the beginning of the collection. The client does not define this value; the API services automatically pass the \`?start=\` parameter on the \`nextPage_url\`.",
+ "name": "start",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "TransactionsListTransactionsRequestStart",
+ "groupName": null,
+ "nameOverride": null,
+ "type": "nullable",
+ "value": {
+ "description": null,
+ "generatedName": "TransactionsListTransactionsRequestStart",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": {
+ "maxLength": 256,
+ "minLength": null,
+ "type": "string",
+ },
+ "type": "primitive",
+ },
+ },
+ },
+ {
+ "description": "The maximum number of items to return in this paged response.",
+ "name": "limit",
+ "parameterNameOverride": null,
+ "schema": {
+ "description": null,
+ "generatedName": "TransactionsListTransactionsRequestLimit",
+ "groupName": null,
+ "nameOverride": null,
+ "type": "nullable",
+ "value": {
+ "description": null,
+ "generatedName": "TransactionsListTransactionsRequestLimit",
+ "groupName": null,
+ "nameOverride": null,
+ "schema": {
+ "type": "int",
+ },
+ "type": "primitive",
+ },
+ },
+ },
+ {
+ "description": "Return only transactions whose \`occurredOn\` date is in this date range. Dates ranges use dates expressed in \`YYYY-MM-DD\` [RFC 3339](https://tools.ietf.org/html/rfc3339) \`date\` format. Each account has an implicit default transaction history range of _n_ days. This is normally 30 days but may be shorter for accounts with high activity. This _n_ day period is applied to any unbounded date ranges. The default date range is the most recent _n_ days. Example date ranges:
accountAllowsFilter
strings may have one of the following
+[enumerated values](https://dx.apiture.com/docs/api-documentation/concepts/label-groups#enumerations):
+
+Value | Description | +
---|---|
billPay | Bill Pay: Include each account where the caller is allowed to use the bill pay feature. + |
+
transferFrom | Transfer From: Include each account where the caller is allowed to transfer money from the account. + |
+
transferTo | Transfer To: Include each account where the caller is allowed to transfer money into the account. + |
+
mobileCheckDeposit | Mobile Check Deposit: Include each account where the caller is allowed to deposit mobile checks. + |
+
view | View: Include each account where the caller is allowed to view full account details (balances, full account number, transactions, etc). + |
+
viewCards | View Cards: Include each account where the caller is allowed to view debit card details. + |
+
manageCards | Manage Cards: Include each account where the caller is allowed to manage debit card details. + |
+
achAccountRisk
strings may have one of the following
+[enumerated values](https://dx.apiture.com/docs/api-documentation/concepts/label-groups#enumerations):
+
+Value | Description | +
---|---|
early | Early: The account is debited three business days before the ACH transfer's effective date. The account balance is also checked for sufficient funds before the account is debited. A risk limit may apply for commercial accounts with an |
+
normal | Normal: The account is debited two business days before the ACH transfer's effective date. The account balance is also checked for sufficient funds before the account is debited. A risk limit may apply for commercial accounts with a |
+
float | Float: The account is debited on the ACH transfer's effective date. The account balance is not checked for sufficient funds before the account is debited. A risk limit applies for commercial accounts with a |
+
sameDay | Same Day: The account is credited on the ACH transfer's effective day. The account balance is not checked because |
+
achSecCode
strings may have one of the following
+[enumerated values](https://dx.apiture.com/docs/api-documentation/concepts/label-groups#enumerations):
+
+Value | Description | +
---|---|
arc | Accounts Receivable | +
boc | Back Office Conversion | +
ccd | Credit or Debit | +
cie | Customer-Initiated | +
ctx | Corporate Trade Exchange | +
pop | Point of Purchase | +
ppd | Prearranged Payment and Deposit | +
rck | Re-Presented Check | +
tel | Telephone-initiated | +
web | Internet-initiated/Mobile | +
challengeFactorType
strings may have one of the following
+[enumerated values](https://dx.apiture.com/docs/api-documentation/concepts/label-groups#enumerations):
+
+Value | Description | +
---|---|
sms | SMS: One-time passcode sent to the primary mobile phone number + |
+
email | Email: One-time passcode sent to the primary email address + |
+
voice | Voice: One-time passcode communicated via automated voice phone call + |
+
authenticatorToken | authenticator Token: One-time passcode issued by a pre-registered hardware device, such as a token key fob, or an authenticator app + |
+
securityQuestions | Security Questions: Prompt with the user's security questions registered with their security profile + |
+
cutoffTimeType
strings may have one of the following
+[enumerated values](https://dx.apiture.com/docs/api-documentation/concepts/label-groups#enumerations):
+
+Value | Description | +
---|---|
ach | ACH | +
sameDayAch | Same Day ACH | +
domesticWireTransfer | Domestic Wire Transfer | +
internationalWireTransfer | International Wire Transfer | +
internalTransfer | Internal Account Transfer: A transfer between accounts at the same financial institution + |
+
externalTransfer | External Account Transfer: A transfer to or from an account at an external financial institution + |
+
billPay | Bill Pay | +
externalAccountVerificationMethod
strings may have one of the following
+[enumerated values](https://dx.apiture.com/docs/api-documentation/concepts/label-groups#enumerations):
+
+Value | Description | +
---|---|
instant | Instant Account Verification: Access to the external account is verified via integration with an account verification service provider. + |
+
microDeposits | Micro-Deposits: Access to the external account is verified via verifying a set of micro-deposits. + |
+
manual | Manual: Access to the external account is verified manually by the financial institution. + |
+
institutionLocatorType
strings may have one of the following
+[enumerated values](https://dx.apiture.com/docs/api-documentation/concepts/label-groups#enumerations):
+
+Value | Description | +
---|---|
abaRoutingNumber | ABA Routing Number: The American Bankers Association routing number of a financial institution + |
+
swiftBicCode | swiftBicCode: The SWIFT Business Identifier Code (BIC) code of a financial institution + |
+
ibanAccountNumber | IBAN: + | +
productType
strings may have one of the following
+[enumerated values](https://dx.apiture.com/docs/api-documentation/concepts/label-groups#enumerations):
+
+Value | Description | +
---|---|
savings | Savings: Savings Account + |
+
checking | Checking: Checking Account + |
+
cd | CD: Certificate of Deposit Account + |
+
ira | IRA: Individual Retirement Account + |
+
loan | Loan: Loan Account + |
+
creditCard | Credit Card: Credit Card Account + |
+
transactionCategoryType
strings may have one of the following
+[enumerated values](https://dx.apiture.com/docs/api-documentation/concepts/label-groups#enumerations):
+
+Value | Description | +
---|---|
credit | Credit: This transaction category applies to credit (expense) transactions. + |
+
debit | Debit: This transaction category applies to debit (income) transactions. + |
+
transactionSubType
strings may have one of the following
+[enumerated values](https://dx.apiture.com/docs/api-documentation/concepts/label-groups#enumerations):
+
+Value | Description | +
---|---|
check | Check: A check drawn from a checking account. + |
+
other | Other: Some other transaction type. + |
+
transactionType
strings may have one of the following
+[enumerated values](https://dx.apiture.com/docs/api-documentation/concepts/label-groups#enumerations):
+
+Value | Description | +
---|---|
balance | Balance: A pseudo-transaction that conveys the account balance. + |
+
debit | Debit: A debit against the account. + |
+
credit | Credit: A credit transaction. + |
+
transferDateRestrictionType
strings may have one of the following
+[enumerated values](https://dx.apiture.com/docs/api-documentation/concepts/label-groups#enumerations):
+
+Value | Description | +
---|---|
pastDate | Past Date: The transfer date is in the past + |
+
pastCutoffTime | Past Cutoff Time: Transfers disallowed because the current time is past the financial institutions' cutoff time + |
+
riskRestricted | Risk Restricted: The date is restricted because the risk level requires one or more days for a debit to clear + |
+
holiday | Holiday: + | +
closure | Closure: Financial institution closure, such as a weekend or other planned closure + |
+
other | Other: Other + |
+
transferFrequency
strings may have one of the following
+[enumerated values](https://dx.apiture.com/docs/api-documentation/concepts/label-groups#enumerations):
+
+Value | Description | +
---|---|
once | Once: Transfer does not repeat + |
+
occasional | Occasional: Transfer recurs but without a new scheduled date + |
+
daily | Daily: Repeat daily on business days + |
+
weekly | Weekly: Repeat weekly + |
+
biweekly | biweekly: Repeat every two weeks (26 times a year) + |
+
semimonthly | Semimonthly: Repeat twice a month (24 times a year) + |
+
monthly | Monthly: Repeat monthly + |
+
monthlyFirstDay | Monthly First Day: Repeat on the first business day of the month + |
+
monthlyLastDay | Monthly Last Day: Repeat on the last business day of the month + |
+
bimonthly | Bimonthly: Repeat every other month + |
+
quarterly | Quarterly: Repeat quarterly (four times a year) + |
+
semiyearly | Semiyearly: Repeat every six months (twice a year) + |
+
yearly | Yearly: Repeat once every year + |
+
transferRecurrenceType
strings may have one of the following
+[enumerated values](https://dx.apiture.com/docs/api-documentation/concepts/label-groups#enumerations):
+
+Value | Description | +
---|---|
fixed | Fixed: The transfer amounts are the same each time a transfer recurs + |
+
variable | Variable: The transfer amounts vary and must be entered/verified each time a transfer recurs + |
+
transferScheduleDirection
strings may have one of the following
+[enumerated values](https://dx.apiture.com/docs/api-documentation/concepts/label-groups#enumerations):
+
+Value | Description | +
---|---|
debit | Debit: Money is transferred from a payer to the financial institution + |
+
credit | Credit: Money is transferred from the financial institution to a payee + |
+
both | Both: Money is transferred both to and from a payee/payer + |
+
transferState
strings may have one of the following
+[enumerated values](https://dx.apiture.com/docs/api-documentation/concepts/label-groups#enumerations):
+
+Value | Description | +
---|---|
unscheduled | Unscheduled: A transfer which is not ready to be queued for processing + |
+
pendingApproval | Pending Approval: A transfer which is awaiting approval before it can be queued for processing + |
+
scheduled | Scheduled: A transfer which has been queued for processing + |
+
processing | Processing: A transfer which is being processed + |
+
processed | Processed: A transfer which has completed processing + |
+
failed | Failed: A transfer which has cannot be processed or failed while processing + |
+
other | Other: A transfer which is in some other state + |
+
transferTypeForDateRestrictions
strings may have one of the following
+[enumerated values](https://dx.apiture.com/docs/api-documentation/concepts/label-groups#enumerations):
+
+Value | Description | +
---|---|
internal | Internal: Internal account to internal account transfer + |
+
ach | ACH: An ACH transfer that includes both debit and credit transfers + |
+
achCredit | ACH Credit: An ACH transfer debiting an internal account and crediting an external account + |
+
achDebit | ACH Debit: An ACH transfer debiting an external account and crediting an internal account + |
+
domesticWireTransfer | Domestic Wire Transfer | +
internationalWireTransfer | International Wire Transfer | +