openapi: 3.0.0 servers: - url: 'https://api.devbank.apiture.com/checkDeposits' info: title: Check Deposits description: > The Check Deposits API allows bank customers to use their mobile or web applications to take photographs or scans of endorsed paper checks and submit them for deposit into an existing account. A check deposit is a batch of one or more checks to be deposited to an account. To deposit checks, a user can create a check deposit resource and add check resources to it. The `apiture:uploadFrontImage` and `apiture:uploadBackImage` links found on a check can be used to upload JPEG formatted check images. After a check is created and front and back images uploaded, the check must be processed to determine if it is eligible to submit. A check can be processed asyncronously using the `apiture:process` link on the check resource, or all checks with `pending` state in a check deposit can be processed asyncronously by using the `apiture:process` link on the check deposit resource. When processing completes, each check may contain risk warnings, risk errors, or risk rejections. * `riskWarnings` are not required to be resolved, but may be useful to resolve potential issues. * `riskErrors` must be resolved in order to submit the check deposit. Errors may be fixed by reuploading images or correcting check data. * `riskRejections` indicate the check is not suitable for deposit, and the check must be removed from the check deposit. All checks in a check deposit must finish processing with `valid` state in order to submit the check deposit. The **Check Deposit** state may be one of the following: - `pending` In creation, not yet submitted for deposit. The user can add checks and make modifications to the check deposit. - `processing` One or more checks in the check deposit are processing. - `valid` The check deposit is eligible to submit. - `invalid` The check deposit is not eligible to submit. It has one or more checks that must be corrected. - `submitted` Submitted and is awaiting FI (Financial Institution) judgement. A `submitted` check deposit is read only. - `accepted` All checks were approved by the FI and processed for deposit. An `accepted` check deposit is read only. - `rejected` All checks were rejected by the FI and not processed for deposit. A `rejected` check deposit is read only. - `acceptedWithRejections` One or more checks in the check deposit were accepted for deposit, but one or more were rejected. An `acceptedWithRejections` check deposit is read only. The **Check** state may be one of the following: - `pending` In creation, not submitted yet. - `processing` Uploaded, awaiting image processing. - `valid` Check has finished processing and is eligible to submit. The check may contain warnings. - `invalid` Check has finished processing and is not eligible to submit. It has one or more errors that must be corrected before becoming eligible to submit. - `submitted` Check was submitted and is awaiting FI judgement before deposit. A `submitted` check is read only. - `accepted` Check was accepted by the FI and deposited. Terminal. An `accepted` check is read only. - `rejected` Check was rejected by the FI and not deposited. Terminal. A `rejected` check is read only. If a check deposit is eligible to submit, the `apiture:submit` link can be used to submit the batch of checks for deposit. The checks are reviewed by the FI, either through an automated system or an admin. If the FI accepts a check, it is deposited and set to `accepted` state. If the FI rejects a check, it is not deposited and is set to `rejected` state. # Error Types Error responses in this API may have one of the `type` values described below. See [Errors](https://developer.apiture.com/docs/concepts/errors) for more information on error responses and error types.

checkImageNotFound

**Description**: No image was found for the specified checkId and image type.
**Remediation**: Check to make sure the check image has completed uploading and/or processing.

emptyRequestBody

**Description**: The supplied request body was empty.
**Remediation**: Check to make sure the body is included in your request.

inProgressCheckDeposit

**Description**: The user has a check deposit in progress and is not allowed to create another.
**Remediation**: Submit or cancel the existing check deposit and try again.

invalidAccount

**Description**: The supplied account reference was malformed.
**Remediation**: Check to make sure that the supplied `account` parameter corresponds to an Apiture account resource.

invalidCheckDepositState

**Description**: Actions on check deposits may only be performed if they are in a valid state.
**Remediation**: Check the state of the check deposit and the allowable states for the requested operation.

invalidCheckId

**Description**: No Checks were found for the specified checkId.
**Remediation**: Check to make sure that the supplied checkId corresponds to an apiture check resource.

invalidCheckState

**Description**: Actions on checks may only be performed if they are in a valid state.
**Remediation**: Check the state of the check and the allowable states for the requested operation.

invalidChecks

**Description**: One or more checks are invalid to perform the requested operation.
**Remediation**: Verify all of the checks are valid and do not contain errors.

invalidDepositId

**Description**: No Deposits were found for the specified depositId.
**Remediation**: Check to make sure that the supplied depositId corresponds to an apiture deposit resource.

invalidGroupName

**Description**: No configurationGroup was found for the specified groupName.
**Remediation**: Check to make sure that the supplied groupName corresponds to an apiture transfer configuration group resource.

invalidValueName

**Description**: No configurationName was found for the specified valueName.
**Remediation**: Check to make sure that the supplied valueName corresponds to an apiture transfer configuration value resource. version: 0.8.0 contact: name: Apiture url: 'https://developer.apiture.com' email: api@apiture.com termsOfService: 'https://developer.apiture.com/docs/Apiture-Open-API-License-Agreement.pdf' tags: - name: Check Deposits description: Deposit checks into a Bank Account - name: Checks description: Checks included in a Check Deposit batch - name: Configuration description: A set of endpoints that allows for the creation and retrieval of configuration options specific to this service - name: Limits description: Limits on the Amount or Number of check Deposits - name: Configuration description: Check Deposits Service Configuration - name: API description: Endpoints which describe this API. paths: /checkDeposits: get: summary: Return a collection of check deposits description: >- Return a [paginated](https://developer.apiture.com/docs/concepts/pagination) [sortable](https://developer.apiture.com/docs/concepts/sorting) [filterable](https://developer.apiture.com/docs/concepts/filtering) [searchable](https://developer.apiture.com/docs/concepts/searchable) collection of check deposits. The [links](https://developer.apiture.com/docs/concepts/links) in the response include pagination links. operationId: getCheckDeposits security: - apiKey: [] accessToken: - banking/read x-apiture-implemented: true tags: - Check Deposits x-apiture-traits: sortBy: - state - createdAt itemSchema: checkDeposits filters: state: filter: - eq - ne - in createdAt: filter: - eq - ne - in parameters: - name: start in: query description: The zero-based index of the first check deposit item to include in this page. The default 0 denotes the beginning of the collection. schema: type: integer format: int64 default: 0 - name: limit in: query description: The maximum number of check deposit representations to return in this page. schema: type: integer format: int32 default: 100 - name: sortBy in: query description: >- Optional sort criteria. See [sort criteria format](https://developer.apiture.com/docs/concepts/sorting), such as `?sortBy=field1,-field2`.
This collection may be sorted by following properties:
• `state`
• `createdAt` schema: type: string - $ref: '#/components/parameters/stateQueryParam' - name: filter in: query description: >- Optional filter criteria. See [filtering](https://developer.apiture.com/docs/concepts/filtering).
This collection may be filtered by following properties and functions:
• Property `state` using functions `eq`, `ne`, `in`
• Property `createdAt` using functions `eq`, `ne`, `in` schema: type: string - $ref: '#/components/parameters/qQueryParam' responses: '200': description: OK content: application/hal+json: schema: $ref: '#/components/schemas/checkDeposits' application/json: schema: $ref: '#/components/schemas/checkDeposits' '400': $ref: '#/components/responses/400' '422': $ref: '#/components/responses/422' post: summary: Create a new check deposit description: >- Create a new check deposit to add checks and submit a deposit. A check deposit must be used to submit a deposit, individual check resources can't be submitted. The new check deposit representation contains the eligible target accounts in `_embedded.eligibleAccounts`. The `apiture:target` link specifies the account resource where the check deposit is deposited. The user can provide an optional `enteredAmount` when creating a check deposit. This is the expected total batch amount of all checks, and can be used as verification against the check amounts later scanned by OCR (optical character recognition). Device data may be provided to identify the client device and aid the deposit verification process. It is recommended to provide as much device data as possible. After creating a check deposit, use the `createCheck` operation (the `apiture:createCheck` link) to add checks to it, then use the `processCheckDeposit` operation (the `apiture:process` link) to process the checks to verify the check contents. If all the checks are valid, follow that with the `submitCheckDeposit` (the `apiture:process` link) operation to submit the valid checks for deposit. operationId: createCheckDeposit security: - apiKey: [] accessToken: - banking/write x-apiture-implemented: true tags: - Check Deposits parameters: - $ref: '#/components/parameters/continueSessionParam' responses: '201': description: Created headers: Location: description: >- The URI of the new resource. If the URI begins with / it is relative to the API root context. Else, it is a full URI starting with *`scheme`*`://host` schema: type: string format: uri ETag: description: >- The `ETag` response header specifies an entity tag which must be provided in an `If-Match` request header for *`PUT`* or *`PATCH`* operations which update the resource. schema: type: string content: application/hal+json: schema: $ref: '#/components/schemas/checkDepositWithEligibleAccounts' application/json: schema: $ref: '#/components/schemas/checkDepositWithEligibleAccounts' '400': $ref: '#/components/responses/400' '409': $ref: '#/components/responses/409CreateCheckDepositConflict' requestBody: content: application/hal+json: schema: $ref: '#/components/schemas/createCheckDeposit' application/json: schema: $ref: '#/components/schemas/createCheckDeposit' description: The data necessary to create a new check deposit. required: true '/checkDeposits/{depositId}': get: summary: Fetch a check deposit description: Return a HAL representation of this check deposit resource. operationId: getCheckDeposit x-apiture-implemented: true tags: - Check Deposits security: - apiKey: [] accessToken: - banking/read parameters: - $ref: '#/components/parameters/depositIdPathParam' - $ref: '#/components/parameters/ifNoneMatchHeaderParam' responses: '200': description: OK headers: ETag: description: >- The `ETag` response header specifies an entity tag which must be provided in an `If-Match` request header for *`PUT`* or *`PATCH`* operations which update this check deposit resource. schema: type: string content: application/hal+json: schema: $ref: '#/components/schemas/checkDeposit' application/json: schema: $ref: '#/components/schemas/checkDeposit' '304': $ref: '#/components/responses/304' '404': $ref: '#/components/responses/404Deposit' patch: summary: Modify this check deposit resource description: >- Modify this check deposit. The `apiture:target` link, `description`, and `enteredAmount` are the only editable fields. The check deposit must have state `pending`, `processing`, `valid`, or `invalid`. operationId: patchCheckDeposit x-apiture-implemented: true tags: - Check Deposits parameters: - $ref: '#/components/parameters/ifMatchHeaderParam' - $ref: '#/components/parameters/depositIdPathParam' responses: '200': description: OK headers: ETag: description: >- The `ETag` response header specifies an entity tag which must be provided in an `If-Match` request header for *`PUT`* or *`PATCH`* operations which update the resource. schema: type: string content: application/hal+json: schema: $ref: '#/components/schemas/checkDeposit' application/json: schema: $ref: '#/components/schemas/checkDeposit' '400': $ref: '#/components/responses/400' '404': $ref: '#/components/responses/404Deposit' security: - apiKey: [] accessToken: - banking/write requestBody: content: application/hal+json: schema: $ref: '#/components/schemas/checkDeposit' application/json: schema: $ref: '#/components/schemas/checkDeposit' description: 'The data necessary to update the check deposit, the `apiture:target` link, `description`, and `enteredAmount` are the only editable fields.' required: true delete: summary: Delete this check deposit resource description: >- Delete this check deposit resource and any resources that are owned by it. This operation deletes any checks included in the check deposit. The check deposit must have state `pending`, `processing`, `valid`, or `invalid`. operationId: deleteCheckDeposit x-apiture-implemented: true tags: - Check Deposits parameters: - $ref: '#/components/parameters/ifMatchHeaderParam' - $ref: '#/components/parameters/depositIdPathParam' responses: '204': $ref: '#/components/responses/204Deleted' '404': $ref: '#/components/responses/404Deposit' '412': $ref: '#/components/responses/412' security: - apiKey: [] accessToken: - banking/delete /submittedCheckDeposits: post: summary: Submit a check deposit description: >- Submit a check deposit that is eligible to be submitted. This operation is invoked from the `apiture:submit` link on a check deposit, which only exists if the action is allowed. If successful, this changes the state to `submitted`. The `apiture:target` link in the referenced check deposit must be a valid account resource URI; it names the account where the checks are deposited. A check deposit can only be submitted to a single target account. operationId: submitCheckDeposit security: - apiKey: [] accessToken: - banking/write x-apiture-implemented: true tags: - Check Deposits parameters: - $ref: '#/components/parameters/depositIdQueryParam' responses: '200': description: OK content: application/hal+json: schema: $ref: '#/components/schemas/checkDeposit' application/json: schema: $ref: '#/components/schemas/checkDeposit' '400': $ref: '#/components/responses/400' '404': $ref: '#/components/responses/404Deposit' '409': $ref: '#/components/responses/409CheckDepositStateConflict' /processedCheckDeposits: post: summary: Process checks in a check deposit description: >- Process all checks in a check deposit which have state `pending`. This operation is invoked from the `apiture:process` link on a check deposit. All checks with `pending` state on the check deposit are processed asyncronously. Checks which are currently being processed or have finished processing with state `valid` or `invalid` are ignored. If any checks have not been processed yet, this returns 202 Accepted and no response body. The response includes a `Retry-After` response header with a recommended retry interval in seconds. If all checks have finished processing, the operations returns 200 OK and the response body is the updated check deposit resource. operationId: processCheckDeposit security: - apiKey: [] accessToken: - banking/write x-apiture-implemented: true tags: - Check Deposits parameters: - $ref: '#/components/parameters/depositIdQueryParam' responses: '200': description: OK. The request has succeeded. content: application/hal+json: schema: $ref: '#/components/schemas/checkDeposit' application/json: schema: $ref: '#/components/schemas/checkDeposit' '202': description: 'Accepted. The request has been accepted for processing, but the processing has not been completed.' headers: Retry-After: description: |- Indicates a suggested delay in seconds after which the client should retry the operation. Example: `Retry-After: 5` schema: type: string '400': $ref: '#/components/responses/400' '404': $ref: '#/components/responses/404Deposit' '409': $ref: '#/components/responses/409CheckDepositStateConflict' '/checkDeposits/{depositId}/checks': post: summary: Add a check to the check deposit batch description: >- Create a new check in the check deposit. A check must reside inside a check deposit resource. Checks can only be added to check deposits that have state `pending`, `processing`, `valid`, or `invalid`. Device data may be provided to identify the client device. The device data for each check may be compared to the device data for other checks or the parent check deposit to aid verification. It is recommended to provide as much device data as possible. The check in the response body includes `apiture:uploadFrontImage` and `apiture:uploadBackImage` links which the client should use to upload check images. Images must be uploaded in JPEG format. After images have been successfully uploaded, `apiture:frontImageContent` and `apiture:backImageContent` links can be used to download image contents. A check must be processed by using the `apiture:process` link before it can be submitted. The check must have successfully uploaded front and back images in order to be processed. operationId: createCheck security: - apiKey: [] accessToken: - banking/write x-apiture-implemented: true tags: - Checks parameters: - $ref: '#/components/parameters/depositIdPathParam' responses: '201': description: Created headers: Location: description: >- The URI of the new resource. If the URI begins with / it is relative to the API root context. Else, it is a full URI starting with *`scheme`*`://host` schema: type: string format: uri ETag: description: >- The `ETag` response header specifies an entity tag which must be provided in an `If-Match` request header for *`PUT`* or *`PATCH`* operations which update the resource. schema: type: string content: application/hal+json: schema: $ref: '#/components/schemas/check' application/json: schema: $ref: '#/components/schemas/check' '400': $ref: '#/components/responses/400' '404': $ref: '#/components/responses/404Deposit' '409': $ref: '#/components/responses/409CheckDepositStateConflict' requestBody: content: application/hal+json: schema: $ref: '#/components/schemas/createCheck' application/json: schema: $ref: '#/components/schemas/createCheck' description: The data necessary to create a new check. required: true '/checkDeposits/{depositId}/checks/{checkId}': get: summary: Fetch a check description: Fetch a HAL representation of this check resource operationId: getCheck x-apiture-implemented: true tags: - Checks security: - apiKey: [] accessToken: - banking/read parameters: - $ref: '#/components/parameters/depositIdPathParam' - $ref: '#/components/parameters/checkIdPathParam' - $ref: '#/components/parameters/ifNoneMatchHeaderParam' responses: '200': description: OK headers: ETag: description: >- The `ETag` response header specifies an entity tag which must be provided in an `If-Match` request header for *`PUT`* or *`PATCH`* operations which update this check deposit resource. schema: type: string content: application/hal+json: schema: $ref: '#/components/schemas/check' application/json: schema: $ref: '#/components/schemas/check' '304': $ref: '#/components/responses/304' '404': $ref: '#/components/responses/404Check' patch: summary: Modify a check in the deposit description: >- Modify check data. `enteredAmount` and `description` are the only editable fields. Checks may not be modified if they have state `submitted`, `accepted`, or `rejected`. If a check has state `processing`, `valid`, or `invalid`, modifying the check `enteredAmount` invalidates the image analysis, resets the check to `pending`, and must be processed again. operationId: patchCheck security: - apiKey: [] accessToken: - banking/write x-apiture-implemented: true tags: - Checks parameters: - $ref: '#/components/parameters/depositIdPathParam' - $ref: '#/components/parameters/checkIdPathParam' - $ref: '#/components/parameters/ifMatchHeaderParam' responses: '200': description: OK headers: ETag: description: >- The `ETag` response header specifies an entity tag which must be provided in an `If-Match` request header for *`PUT`* or *`PATCH`* operations which update the resource. schema: type: string content: application/hal+json: schema: $ref: '#/components/schemas/check' application/json: schema: $ref: '#/components/schemas/check' '400': $ref: '#/components/responses/400' '404': $ref: '#/components/responses/404Deposit' '409': $ref: '#/components/responses/409CheckDepositStateConflict' requestBody: content: application/hal+json: schema: $ref: '#/components/schemas/check' application/json: schema: $ref: '#/components/schemas/check' description: The data to modify a check required: true delete: summary: Remove a check from the check deposit description: 'Removes the check from the check deposit batch. Checks may not be deleted if they have state `submitted`, `accepted`, or `rejected`.' operationId: deleteCheck security: - apiKey: [] accessToken: - banking/write x-apiture-implemented: true tags: - Checks parameters: - $ref: '#/components/parameters/depositIdPathParam' - $ref: '#/components/parameters/checkIdPathParam' responses: '200': description: OK '404': $ref: '#/components/responses/404Deposit' '409': $ref: '#/components/responses/409CheckDepositStateConflict' '/checkDeposits/{depositId}/checks/{checkId}/images/{side}': get: summary: Return the check side image metadata description: |- Return metadata of the image file. Valid check side values: * `front` * `back` operationId: getCheckImage x-apiture-implemented: true tags: - Checks security: - apiKey: [] accessToken: - banking/read parameters: - $ref: '#/components/parameters/depositIdPathParam' - $ref: '#/components/parameters/checkIdPathParam' - $ref: '#/components/parameters/checkSidePathParam' - $ref: '#/components/parameters/ifNoneMatchHeaderParam' responses: '200': description: OK headers: ETag: description: >- The `ETag` response header specifies an entity tag which must be provided in an `If-Match` request header for *`PUT`* or *`PATCH`* operations which update this check deposit resource. schema: type: string content: '*/*': schema: $ref: '#/components/schemas/checkImage' application/hal+json: schema: $ref: '#/components/schemas/checkImage' application/json: schema: $ref: '#/components/schemas/checkImage' '404': $ref: '#/components/responses/404CheckImage' post: summary: Create a new upload uri for the check side image description: >- Create a new upload uri for the check side image. This operation is used if the client needs to replace an uploaded image side, it is not needed for new checks. Upload uris may not be issued if the check has state `submitted`, `accepted`, or `rejected`. The response body includes a `apiture:uploadUri` link which is used to `POST` the file content and upload an image. This replaces any existing image. The `Content-Type` header (or the `Content-Type` in the multipart form data) must match the `contentType` of the file resource. JPEG is the only supported image format. If a check has state `processing`, `valid`, or `invalid`, creating a new image upload uri invalidates the image analysis, resets the check to `pending`, and the check must be processed again. Valid check side values: * `front` * `back` operationId: createCheckImageUpload x-apiture-implemented: true tags: - Checks security: - apiKey: [] accessToken: - banking/read parameters: - $ref: '#/components/parameters/depositIdPathParam' - $ref: '#/components/parameters/checkIdPathParam' - $ref: '#/components/parameters/checkSidePathParam' responses: '200': description: OK content: application/hal+json: schema: $ref: '#/components/schemas/checkImage' application/json: schema: $ref: '#/components/schemas/checkImage' '404': $ref: '#/components/responses/404Check' '/checkDeposits/{depositId}/checks/{checkId}/images/{side}/content': get: summary: Return the raw content of the check image side description: >- Return the raw content of the image file as a stream of bytes. This operation normally returns a 302 to redirect the caller to the actual URL where the file content is available. Valid check side values: * `front` * `back` operationId: getCheckImageContent x-apiture-implemented: true tags: - Checks security: - apiKey: [] accessToken: - banking/read parameters: - $ref: '#/components/parameters/depositIdPathParam' - $ref: '#/components/parameters/checkIdPathParam' - $ref: '#/components/parameters/checkSidePathParam' - $ref: '#/components/parameters/ifNoneMatchHeaderParam' responses: '200': description: OK headers: Content-Type: description: >- The media type of the file content. The default image media type is `image/jpeg`, but this may change if additional file types are supported in the future. schema: type: string content: '*/*': schema: type: string format: binary application/hal+json: schema: type: string format: binary application/json: schema: type: string format: binary '302': description: Found. The URL where the file's content is located. This is the most likely response. headers: Location: description: The URL where the file's content is located. schema: type: string '404': $ref: '#/components/responses/404Check' '/checkDeposits/{depositId}/processedChecks': post: summary: Process a check description: >- Process a Check to validate data, perform image analysis, and return risk factors. This operation is invoked from the `apiture:process` link on a check. Each check in a check deposit must be processed before the batch can be submitted. Checks may not be processed if they have state `submitted`, `accepted`, or `rejected`. If the check has not been processed, this returns 202 Accepted and no response body. The response includes a `Retry-After` response header with a recommended retry interval in seconds. If the check has finished processing, the operations returns 200 OK and the response body is the updated check resource. `riskRejections`, `riskErrors`, `riskWarnings`, and `riskInfo` may contain risk factors after a check has completed processing. Risk factors include diagnostic information about the check, check images, or end user, which indicate if the check is acceptable for deposit. - `riskWarnings` are not required to be resolved, but may be useful to resolve potential issues. - `riskErrors` must be resolved in order to submit the check deposit. Errors may be fixed by reuploading images or correcting check data. - `riskRejections` indicate the check is not suitable for deposit, and the check must be removed from the check deposit. - `riskInfo` includes additional diagnostic information about the check. If a check has finished processing and contains no risk factors, it indicates the check has a high chance of being accepted for deposit. operationId: processCheck security: - apiKey: [] accessToken: - banking/write x-apiture-implemented: true tags: - Checks parameters: - $ref: '#/components/parameters/depositIdPathParam' - name: checkId description: The unique identifier of this check. This is an opaque string. in: query required: true schema: type: string responses: '200': description: OK. The request has succeeded. content: application/hal+json: schema: $ref: '#/components/schemas/check' application/json: schema: $ref: '#/components/schemas/check' '202': description: 'Accepted. The request has been accepted for processing, but the processing has not been completed.' headers: Retry-After: description: |- Indicates a suggested delay in seconds after which the client should retry the operation. Example: `Retry-After: 5` schema: type: string '400': $ref: '#/components/responses/400' '404': $ref: '#/components/responses/404Deposit' '409': $ref: '#/components/responses/409CheckStateConflict' /rejectedChecks: post: summary: Reject a check description: >- Reject a check if it is eligible to be rejected. This operation is invoked from the `apiture:reject` link on a check. The link is only be returned for admins, and only admins can reject a check. There is no request body in this method. Rejecting a check also reverses the core transaction. operationId: rejectCheck security: - apiKey: [] accessToken: - admin/write x-apiture-implemented: true tags: - Checks parameters: - name: check description: A server-generated key which identifies an existing check resource. in: query required: true schema: type: string responses: '200': description: OK. The request has succeeded. content: application/hal+json: schema: $ref: '#/components/schemas/check' application/json: schema: $ref: '#/components/schemas/check' '400': $ref: '#/components/responses/400' '404': $ref: '#/components/responses/404Deposit' '409': $ref: '#/components/responses/409CheckStateConflict' /labels: get: summary: Localized Labels description: >- Return a JSON object which defines labels for enumeration types and choice groups defined by the schemas defined in this API. The labels in the response may not all match the requested language; some may be in the default language (`en-us`). operationId: getLabels security: - apiKey: [] parameters: - name: Accept-Language in: header description: >- The weighted language tags which indicate the user's preferred natural language for the localized labels in the response, as per [RFC 7231](https://tools.ietf.org/html/rfc7231#section-5.3.5). schema: type: string responses: '200': description: OK content: application/hal+json: schema: $ref: '#/components/schemas/labelGroups' application/json: schema: $ref: '#/components/schemas/labelGroups' tags: - API /: get: summary: Top-level resources and operations in this API description: Return links to the top-level resources and operations in this API. operationId: getApi security: - apiKey: [] x-apiture-implemented: true responses: '200': description: OK content: application/hal+json: schema: $ref: '#/components/schemas/root' application/json: schema: $ref: '#/components/schemas/root' tags: - API /apiDoc: get: summary: Return API definition document description: Return the OpenAPI document that describes this API. operationId: getApiDoc security: - apiKey: [] x-apiture-implemented: true responses: '200': description: OK content: application/json: schema: type: object application/openapi+json;version=2.0: schema: type: object application/openapi+yaml;version=2.0: schema: type: object application/hal+json: schema: type: object tags: - API /limits: get: summary: Return the mobile check deposit limits description: Return the mobile check deposit limits. The response shows the check deposit limits and amounts for the previous 30 days. operationId: getLimits x-apiture-implemented: true tags: - Limits security: - apiKey: [] accessToken: - banking/read parameters: - $ref: '#/components/parameters/accountQueryParam' responses: '200': description: OK content: application/hal+json: schema: $ref: '#/components/schemas/checkDepositLimits' application/json: schema: $ref: '#/components/schemas/checkDepositLimits' '400': $ref: '#/components/responses/400' '422': description: >- Unprocessable Entity. One or more of the query parameters was well formed but otherwise invalid. The `_error` field in the response contains details about the request error. This error response may have one of the following `type` values: * [`invalidAccount`](#err-invalidAccount) x-apiture-errors: - invalidAccount content: application/hal+json: schema: $ref: '#/components/schemas/errorResponse' application/json: schema: $ref: '#/components/schemas/errorResponse' /configurations: get: summary: Configuration definition for this API description: Returns the configuration for this API operationId: getConfiguration x-apiture-hidden: true tags: - Configuration responses: '200': description: OK content: application/hal+json: schema: $ref: '#/components/schemas/configuration' application/json: schema: $ref: '#/components/schemas/configuration' security: - apiKey: [] accessToken: - profile/read /configurations/groups: get: summary: Return a collection of configuration groups description: >- Return a[ paginated](https://developer.apiture.com/docs/concepts/pagination)[ sortable](https://developer.apiture.com/docs/concepts/sorting)[ filterable](https://developer.apiture.com/docs/concepts/filtering)[ searchable](https://developer.apiture.com/docs/concepts/searchable) collection of configuration groups. The [links](https://developer.apiture.com/docs/concepts/links) in the response include pagination links. operationId: getConfigurationGroups x-apiture-hidden: true tags: - Configuration parameters: - name: start in: query description: The zero-based index of the first configuration group item to include in this page. The default 0 denotes the beginning of the collection. schema: type: integer format: int64 default: 0 - name: limit in: query description: The maximum number of configuration group representations to return in this page. schema: type: integer format: int32 default: 100 - name: sortBy in: query description: 'Optional sort criteria. See [sort criteria format](https://developer.apiture.com/docs/concepts/sorting), such as `?sortBy=field1,-field2`.' schema: type: string - $ref: '#/components/parameters/filterQueryParam' - $ref: '#/components/parameters/qQueryParam' responses: '200': description: OK content: application/hal+json: schema: $ref: '#/components/schemas/configurationGroups' application/json: schema: $ref: '#/components/schemas/configurationGroups' '400': $ref: '#/components/responses/400' '422': $ref: '#/components/responses/422' security: - apiKey: [] accessToken: - admin/read '/configurations/groups/{groupName}': get: summary: Fetch a representation of this configuration group description: 'Return a [HAL](https://developer.apiture.com/docs/concepts/hal) representation of this configuration group resource.' operationId: getConfigurationGroup x-apiture-hidden: true tags: - Configuration parameters: - $ref: '#/components/parameters/configurationGroupNamePathParam' - $ref: '#/components/parameters/ifNoneMatchHeaderParam' responses: '200': description: OK headers: ETag: description: >- The `ETag` response header specifies an entity tag which may be provided in an `If-None-Match` request header for *`GET`* operations for this configuration group resource. schema: type: string content: application/hal+json: schema: $ref: '#/components/schemas/configurationGroup' application/json: schema: $ref: '#/components/schemas/configurationGroup' '304': $ref: '#/components/responses/304' '404': $ref: '#/components/responses/404ConfigurationGroup' security: - apiKey: [] accessToken: - admin/read '/configurations/groups/{groupName}/schema': get: summary: Fetch the schema for this configuration group description: 'Return a [HAL](https://developer.apiture.com/docs/concepts/hal) representation of this configuration group schema resource.' operationId: getConfigurationGroupSchema x-apiture-hidden: true tags: - Configuration parameters: - $ref: '#/components/parameters/configurationGroupNamePathParam' - $ref: '#/components/parameters/ifNoneMatchHeaderParam' responses: '200': description: OK headers: ETag: description: The `ETag` response header specifies an entity tag which may be provided in an `If-Match` request header for *`PUT`* schema: type: string content: application/hal+json: schema: $ref: '#/components/schemas/configurationSchema' application/json: schema: $ref: '#/components/schemas/configurationSchema' '304': $ref: '#/components/responses/304' '404': $ref: '#/components/responses/404ConfigurationGroup' security: - apiKey: [] accessToken: - admin/read '/configurations/groups/{groupName}/values': get: summary: Fetch the values for the specified configuration group description: Return a representation of this configuration group values resource. operationId: getConfigurationGroupValues security: - apiKey: [] accessToken: - profiles/read tags: - Configuration parameters: - $ref: '#/components/parameters/configurationGroupNamePathParam' - $ref: '#/components/parameters/ifNoneMatchHeaderParam' responses: '200': description: OK headers: ETag: description: The `ETag` response header specifies an entity tag which may be provided in an `If-Match` request header for *`PUT`* schema: type: string content: application/hal+json: schema: $ref: '#/components/schemas/configurationValues' application/json: schema: $ref: '#/components/schemas/configurationValues' '304': $ref: '#/components/responses/304' '404': $ref: '#/components/responses/404ConfigurationGroup' put: summary: Update the values for the specified configuration group description: Perform a complete replacement of this set of values operationId: updateConfigurationGroupValues security: - apiKey: [] accessToken: - admin/write tags: - Configuration parameters: - $ref: '#/components/parameters/configurationGroupNamePathParam' - $ref: '#/components/parameters/ifMatchHeaderParam' responses: '200': description: OK headers: ETag: description: The `ETag` response header specifies an entity tag which may be provided in an `If-Match` request header for *`PUT`* schema: type: string content: application/hal+json: schema: $ref: '#/components/schemas/configurationSchema' application/json: schema: $ref: '#/components/schemas/configurationSchema' '400': $ref: '#/components/responses/400' '403': description: Access denied. Only user allowed to update configurations is an admin. content: application/hal+json: schema: $ref: '#/components/schemas/errorResponse' application/json: schema: $ref: '#/components/schemas/errorResponse' '404': $ref: '#/components/responses/404ConfigurationGroup' '412': $ref: '#/components/responses/412' requestBody: content: application/hal+json: schema: $ref: '#/components/schemas/configurationValues' application/json: schema: $ref: '#/components/schemas/configurationValues' required: true '/configurations/groups/{groupName}/values/{valueName}': get: summary: Fetch a single value associated with the specified configuration group description: >- Fetch a single value associated with this configuration group. This provides convenient access to individual values of the configuration group. The response is always a JSON value which can be parsed with a strict JSON parser. The response may be * a primitive number, boolean, or quoted JSON string. * a JSON array. * a JSON object. * `null`. Examples: * `"a string configuration value"` * `120` * `true` * `null` * `{ "borderWidth": 8, "foregroundColor": "blue" }` To update a specific value, use `PUT /configurations/groups/{groupName}/values/{valueName}` (operation `updateConfigurationGroupValue`). operationId: getConfigurationGroupValue security: - apiKey: [] accessToken: - admin/read tags: - Configuration parameters: - $ref: '#/components/parameters/configurationGroupNamePathParam' - $ref: '#/components/parameters/configurationGroupValueNamePathParam' responses: '200': description: 'OK. The value of the named configuraton value as a JSON string, number, boolean, array, or object.' headers: ETag: description: >- The `ETag` response header specifies an entity tag which may be provided in an `If-Match` request header for *`PUT`* or *`PATCH`* operations which update this configuration group resource. schema: type: string content: application/hal+json: schema: type: string application/json: schema: type: string '404': $ref: '#/components/responses/404ConfigurationGroupOrValue' put: summary: Update a single value associated with the specified configuration group description: >- Update a single value associated with this configuration group. This provides convenient access to individual values of the configuration group as defined in the configuration group's `schema`. The request body must conform to the configuration group's schema for the named `{valueName}`. This operation is idempotent. The request body must be a JSON value which can be parsed with a strict JSON parser. The response may be * a primitive number, boolean, or quoted JSON string. * a JSON array. * a JSON object. * `null`. Examples: * `"a string configuration value"` * `120` * `true` * `null` * `{ "borderWidth": 8, "foregroundColor": "blue" }` To fetch specific value, use `GET /configurations/groups/{groupName}/values/{valueName}` (operation `getConfigurationGroupValue`). operationId: updateConfigurationGroupValue security: - apiKey: [] accessToken: - admin/write tags: - Configuration parameters: - $ref: '#/components/parameters/configurationGroupNamePathParam' - $ref: '#/components/parameters/configurationGroupValueNamePathParam' responses: '200': description: OK headers: ETag: description: >- The `ETag` response header specifies an entity tag which may be provided in an `If-Match` request header for *`PUT`* or *`PATCH`* operations which update this configuration group resource. schema: type: string content: application/hal+json: schema: type: string application/json: schema: type: string '403': description: Access denied. Only administrators may update configurations. content: application/hal+json: schema: $ref: '#/components/schemas/errorResponse' application/json: schema: $ref: '#/components/schemas/errorResponse' requestBody: content: application/hal+json: schema: type: string application/json: schema: type: string description: >- The request body must a valid JSON value and should be parsable with a JSON parser. The result may be a string, number, boolean, array, or object. required: true x-apiture-traits: - api: title: Check Deposits basePath: checkDeposits links: - getCheckDeposits - createCheckDeposit - getApi - getApiDoc - getLabels - resource: null name: check deposit description: A batch of checks to be deposited. excludeMethods: - put - resource: null name: check description: A check to be deposited. prefixPath: '/checkDeposits/{checkDepositId}/' excludeMethods: - put x-apiture-errors: emptyRequestBody: description: The supplied request body was empty remediation: Check to make sure the body is included in your request invalidGroupName: description: No configurationGroup was found for the specified groupName remediation: Check to make sure that the supplied groupName corresponds to an apiture transfer configuration group resource invalidValueName: description: No configurationName was found for the specified valueName remediation: Check to make sure that the supplied valueName corresponds to an apiture transfer configuration value resource invalidDepositId: description: No Deposits were found for the specified depositId remediation: Check to make sure that the supplied depositId corresponds to an apiture deposit resource invalidCheckId: description: No Checks were found for the specified checkId remediation: Check to make sure that the supplied checkId corresponds to an apiture check resource checkImageNotFound: description: No image was found for the specified checkId and image type remediation: Check to make sure the check image has completed uploading and/or processing invalidCheckDepositState: description: Actions on check deposits may only be performed if they are in a valid state remediation: Check the state of the check deposit and the allowable states for the requested operation invalidCheckState: description: Actions on checks may only be performed if they are in a valid state remediation: Check the state of the check and the allowable states for the requested operation invalidChecks: description: One or more checks are invalid to perform the requested operation remediation: Verify all of the checks are valid and do not contain errors inProgressCheckDeposit: description: The user has a check deposit in progress and is not allowed to create another remediation: Submit or cancel the existing check deposit and try again invalidAccount: description: The supplied account reference was malformed remediation: Check to make sure that the supplied `account` parameter corresponds to an Apiture account resource x-apiture-annotated-at: '2020-10-20T14:21:46.133Z' components: schemas: checkDepositLimit: title: Check Deposit Limit (v1.0.1) description: List of check deposit limits and the remaining amounts. x-apiture-version: 1.0.1 x-apiture-composition: - $ref: '#/components/schemas/abstractResource' - properties: - context - days - checkCounts - checkAmounts properties: _links: description: 'An optional map of links, mapping each link relation to a link object. This model defines the `_links` object of HAL representations.' allOf: - $ref: '#/components/schemas/links' _embedded: description: 'An optional map of nested resources, mapping each nested resource name to a nested resource representation.' type: object _profile: description: 'The URI of a [resource profile](https://developer.apiture.com/docs/concepts/profiles/) which describes the representation.' type: string format: uri _error: description: An object which describes an error. This value is omitted if the operation succeeded without error. type: object allOf: - $ref: '#/components/schemas/error' context: description: Defines the context of this check deposit limit. allOf: - $ref: '#/components/schemas/checkDepositLimitContext' days: description: 'The number of days covered this limit response, backwards from the today.' type: integer minimum: 1 checkCounts: description: Limits on the number of check deposit. allOf: - $ref: '#/components/schemas/checkCounts' checkAmounts: description: Limits on check deposit amounts. allOf: - $ref: '#/components/schemas/checkAmounts' type: object x-apiture-flattened: true checkCounts: title: Check Count Limits (v1.0.1) description: The limits on the number of check deposit in this time period. type: object x-apiture-version: 1.0.1 properties: current: type: integer readOnly: true description: The current number of mobile check deposits in this time period remaining: type: integer readOnly: true description: The number of check deposits remaining. x-apiture-flattened: true checkAmounts: title: Check Amount Limits (v1.0.1) description: The limits on check deposit amounts in this time period. type: object x-apiture-version: 1.0.1 properties: current: type: string format: decimal readOnly: true description: The current total check deposit amount in this time period. remaining: type: string format: decimal readOnly: true description: The remaining check deposit amount. currency: description: 'The [ISO 4217 currency code](https://en.wikipedia.org/wiki/ISO_4217) for this balance.' type: string readOnly: true x-apiture-flattened: true checkDepositLimits: title: Check Deposit Limits (v1.0.1) description: Collection of check deposit limits and the remaining amounts. x-apiture-version: 1.0.1 example: _profile: 'https://api.apiture.com/schemas/checkDeposits/checkDepositLimits/v1.0.1/profile.json' limits: - context: user days: 30 checkCounts: current: 100 remaining: 30 checkAmounts: current: '10000.00' remaining: '2500.00' currency: USD x-apiture-composition: - $ref: '#/components/schemas/abstractResource' - properties: - limits properties: _links: description: 'An optional map of links, mapping each link relation to a link object. This model defines the `_links` object of HAL representations.' allOf: - $ref: '#/components/schemas/links' _embedded: description: 'An optional map of nested resources, mapping each nested resource name to a nested resource representation.' type: object _profile: description: 'The URI of a [resource profile](https://developer.apiture.com/docs/concepts/profiles/) which describes the representation.' type: string format: uri _error: description: An object which describes an error. This value is omitted if the operation succeeded without error. type: object allOf: - $ref: '#/components/schemas/error' limits: type: array description: An array containing the limits. items: $ref: '#/components/schemas/checkDepositLimit' type: object x-apiture-flattened: true checkDepositLimitContext: title: Check Deposit Limit Context (v1.0.0) description: |- The context of a check deposit limit. checkDepositLimitContext strings may have one of the following [enumerated values](https://developer.apiture.com/concepts/label-groups#enumerations):
ValueDescription
userUser: User-level check deposit limits.
accountAccount-level check deposit limits.
These enumeration values are further described by the [label group](https://developer.apiture.com/concepts/label-groups) named `checkDepositLimitContext` in the response from the [`getLabels`](#op-getLabels) operation. type: string enum: - user - account x-apiture-enum: checkDepositLimitContext x-apiture-version: 1.0.0 x-apiture-flattened: true checkDeposits: title: Check Deposits Collection (v1.0.1) description: >- Collection of check deposits. The items in the collection are ordered in the `_embedded` object with name `items`. The top-level `_links` object may contain pagination links (`self`, `next`, `prev`, `first`, `last`, `collection`). x-apiture-version: 1.0.1 example: _profile: 'https://api.apiture.com/schemas/checkDeposits/checkDeposits/v1.0.1/profile.json' start: 0 limit: 10 count: 1 name: check deposits _links: self: href: 'https://api.example.bank/checkDeposits/checkDeposits?start=0&limit=10' first: href: 'https://api.example.bank/checkDeposits/checkDeposits?start=0&limit=10' next: href: 'https://api.example.bank/checkDeposits/checkDeposits?start=10&limit=10' collection: href: 'https://api.example.bank/checkDeposits/checkDeposits' _embedded: items: _id: f6c321e6-c628-419a-879e-ebcbc56b57fc _profile: 'https://api.apiture.com/schemas/checkDeposits/summaryCheckDeposit/v1.0.0/profile.json' _links: self: href: 'https://api.example.bank/checkDeposits/checkDeposits/f6c321e6-c628-419a-879e-ebcbc56b57fc' 'apiture:target': href: 'https://api.example.bank/accounts/accounts/599b8ab5-6925-4f58-90c5-f6aa5b05f9d9' state: pending createdAt: '2019-01-20T05:54:52.375Z' description: bake sale checks enteredAmount: '103.22' checkCount: 3 x-apiture-composition: - $ref: '#/components/schemas/collection' - properties: - _embedded properties: _links: description: 'An optional map of links, mapping each link relation to a link object. This model defines the `_links` object of HAL representations.' allOf: - $ref: '#/components/schemas/links' _embedded: description: Embedded objects. allOf: - $ref: '#/components/schemas/checkDepositsEmbeddedObjects' _profile: description: 'The URI of a [resource profile](https://developer.apiture.com/docs/concepts/profiles/) which describes the representation.' type: string format: uri _error: description: An object which describes an error. This value is omitted if the operation succeeded without error. type: object allOf: - $ref: '#/components/schemas/error' count: description: >- The number of items in the collection. This value is _optional_ and may be omitted if the count is not computable efficiently. If a filter is applied to the collection (either implicitly or explicitly), the count, if present, indicates the number of items that satisfy the filter. type: integer start: description: The start index of this page of items. type: integer limit: description: The maximum number of items per page. type: integer name: description: The name of the collection. type: string type: object x-apiture-flattened: true checkDepositsEmbeddedObjects: title: Check Deposits Embedded Objects (v1.0.0) description: Objects embedded in the `checkDeposits` collection's `items`. type: object properties: items: description: An array containing a page of check deposit items. type: array items: $ref: '#/components/schemas/summaryCheckDeposit' x-apiture-version: 1.0.0 x-apiture-flattened: true summaryCheckDeposit: title: Check Deposit Summary (v1.0.0) description: Summary representation of check deposit resource in collections. example: _id: f6c321e6-c628-419a-879e-ebcbc56b57fc _profile: 'https://api.apiture.com/schemas/checkDeposits/summaryCheckDeposit/v1.0.0/profile.json' _links: self: href: /checkDeposits/checkDeposits/f6c321e6-c628-419a-879e-ebcbc56b57fc state: pending createdAt: '2019-01-20T05:54:52.375Z' description: bake sale checks enteredAmount: '1023.22' checkCount: 3 x-apiture-version: 1.0.0 x-apiture-composition: - $ref: '#/components/schemas/abstractResource' - properties: - _id - state - description - depositedAmount - enteredAmount - scannedAmount - checkCount - createdAt - submittedAt - acceptedAt properties: _links: description: 'An optional map of links, mapping each link relation to a link object. This model defines the `_links` object of HAL representations.' allOf: - $ref: '#/components/schemas/links' _embedded: description: 'An optional map of nested resources, mapping each nested resource name to a nested resource representation.' type: object _profile: description: 'The URI of a [resource profile](https://developer.apiture.com/docs/concepts/profiles/) which describes the representation.' type: string format: uri _error: description: An object which describes an error. This value is omitted if the operation succeeded without error. type: object allOf: - $ref: '#/components/schemas/error' _id: description: The unique identifier for this account resource. This is an immutable opaque string. readOnly: true type: string state: $ref: '#/components/schemas/checkDepositState' description: description: Description for the deposit. type: string example: Check from Jim depositedAmount: description: >- The total USD amount of the check deposit after it was successfully deposited. This number is immutable and only available after the check deposit was accepted by the FI and has state 'accepted' or 'acceptedWithRejections'. The numeric value is represented as a string so that it can be exact with no loss of precision. type: string readOnly: true example: '1023.22' enteredAmount: description: >- The USD amount of the deposit entered by the user. The numeric value is represented as a string so that it can be exact with no loss of precision. type: string example: '215.10' scannedAmount: description: >- The total USD amount of the deposit read by OCR. The numeric value is represented as a string so that it can be exact with no loss of precision. type: string readOnly: true example: '214.10' checkCount: description: The current count of checks in the deposit batch. type: number readOnly: true example: 3 createdAt: description: 'The date-time the check deposit was created. This is an [RFC 3339](https://tools.ietf.org/html/rfc3339) UTC time stamp.' type: string format: date-time readOnly: true submittedAt: description: 'The date-time the check deposit was submitted. This is an [RFC 3339](https://tools.ietf.org/html/rfc3339) UTC time stamp.' type: string format: date-time readOnly: true acceptedAt: description: >- The date-time the check deposit was accepted. This does not mean the checks have cleared, only that the deposit has been posted. This is an [RFC 3339](https://tools.ietf.org/html/rfc3339) UTC time stamp. type: string format: date-time readOnly: true type: object x-apiture-flattened: true createCheckDeposit: title: Create Check Deposit Fields (v1.0.1) description: | Create a new check deposit. Account URI to deposit into should be included in _links 'apiture:target'. Response and request bodies using this createCheckDeposit schema may contain the following links:
RelSummaryMethod
apiture:target Target account where the checks are depositedGET
x-apiture-version: 1.0.1 x-apiture-links: - rel: 'apiture:target' title: Target account where the checks are deposited example: enteredAmount: '215.10' description: bake sale checks device: id: 8b1e09ee-49cd-47c1-bd72-837432296e3c type: iPhone operatingSystem: iOS operatingSystemVersion: 13.2.1 make: Apple model: iPhoneXs _links: 'apiture:target': href: /accounts/accounts/599b8ab5-6925-4f58-90c5-f6aa5b05f9d9 _profile: 'https://api.apiture.com/schemas/checkDeposits/createCheckDeposit/v1.0.1/profile.json' x-apiture-composition: - $ref: '#/components/schemas/abstractResource' - properties: - enteredAmount - description - device properties: _links: description: 'An optional map of links, mapping each link relation to a link object. This model defines the `_links` object of HAL representations.' allOf: - $ref: '#/components/schemas/links' _embedded: description: 'An optional map of nested resources, mapping each nested resource name to a nested resource representation.' type: object _profile: description: 'The URI of a [resource profile](https://developer.apiture.com/docs/concepts/profiles/) which describes the representation.' type: string format: uri _error: description: An object which describes an error. This value is omitted if the operation succeeded without error. type: object allOf: - $ref: '#/components/schemas/error' enteredAmount: description: >- The total USD amount of the deposit entered by the user. The numeric value is represented as a string so that it can be exact with no loss of precision. type: string example: '215.10' description: description: Description for the deposit. type: string example: bake sale checks device: $ref: '#/components/schemas/device' type: object x-apiture-flattened: true createCheck: title: Create Check Fields (v1.0.0) description: Create a new check. example: enteredAmount: '43.11' description: from jim device: id: 8b1e09ee-49cd-47c1-bd72-837432296e3c type: iPhone operatingSystem: iOS operatingSystemVersion: 13.2.1 make: Apple model: iPhoneXs x-apiture-version: 1.0.0 x-apiture-composition: - $ref: '#/components/schemas/abstractResource' - properties: - enteredAmount - description - device properties: _links: description: 'An optional map of links, mapping each link relation to a link object. This model defines the `_links` object of HAL representations.' allOf: - $ref: '#/components/schemas/links' _embedded: description: 'An optional map of nested resources, mapping each nested resource name to a nested resource representation.' type: object _profile: description: 'The URI of a [resource profile](https://developer.apiture.com/docs/concepts/profiles/) which describes the representation.' type: string format: uri _error: description: An object which describes an error. This value is omitted if the operation succeeded without error. type: object allOf: - $ref: '#/components/schemas/error' enteredAmount: description: >- The USD amount of the deposit entered by the user. The numeric value is represented as a string so that it can be exact with no loss of precision. type: string example: '215.10' description: description: Description for the deposit. type: string example: bake sale checks device: $ref: '#/components/schemas/device' type: object x-apiture-flattened: true checkDeposit: title: Check Deposit (v1.0.1) description: > Check deposit resource. Checks are added to this before being deposited. The `apiture:target` link contains the URI of the target account where the checks are deposited. The `apiture:process` link invokes the [`processCheckDeposit` operation](#op-processCheckDeposit) to process the checks to verify the check contents (`POST`); the link is present if that operation is available for the check deposit. The `apiture:submit` link invokes the [`submitCheckDeposit` operation](#op-submitCheckDeposit) to submit the valid checks for deposit (`POST`); the link is present if that operation is available for the check deposit. Response and request bodies using this checkDeposit schema may contain the following links:
RelSummaryMethod
thisFetch a check depositGET
apiture:target Target account where the checks are depositedGET
apiture:createCheckAdd a check to the check deposit batchPOST
apiture:submitSubmit a check depositPOST
apiture:processProcess checks in a check depositPOST
x-apiture-version: 1.0.1 x-apiture-links: - rel: this operationId: getCheckDeposit - rel: 'apiture:target' title: Target account where the checks are deposited - rel: 'apiture:createCheck' operationId: createCheck - rel: 'apiture:submit' operationId: submitCheckDeposit - rel: 'apiture:process' operationId: processCheckDeposit example: _id: f6c321e6-c628-419a-879e-ebcbc56b57fc _profile: 'https://api.apiture.com/schemas/checkDeposits/checkDeposit/v1.0.1/profile.json' _links: self: href: 'https://api.example.bank/checkDeposits/checkDeposits/f6c321e6-c628-419a-879e-ebcbc56b57fc' 'apiture:target': href: 'https://api.example.bank/accounts/accounts/599b8ab5-6925-4f58-90c5-f6aa5b05f9d9' 'apiture:createCheck': href: 'https://api.example.bank/checkDeposits/checkDeposits/f6c321e6-c628-419a-879e-ebcbc56b57fc/checks' 'apiture:submit': href: 'https://api.example.bank/checkDeposits/checkDeposits/submitted?depositId=f6c321e6-c628-419a-879e-ebcbc56b57fc' 'apiture:process': href: 'https://api.example.bank/checkDeposits/checkDeposits/processedCheckDeposits?depositId=f6c321e6-c628-419a-879e-ebcbc56b57fc' state: submitted createdAt: '2019-01-20T05:54:52.375Z' description: bake sale checks depositedAmount: '125.20' checkCount: 2 enteredAmount: '125.10' scannedAmount: '125.20' checks: - _id: 999a1163-6e32-47fd-b9b8-085e198729b2 _profile: 'https://api.apiture.com/schemas/checkDeposits/check/v1.0.0/profile.json' _links: self: href: >- https://api.example.bank/checkDeposits/checkDeposits/f6c321e6-c628-419a-879e-ebcbc56b57fc/checks/999a1163-6e32-47fd-b9b8-085e198729b2 'apiture:process': href: >- https://api.example.bank/checkDeposits/checkDeposits/f6c321e6-c628-419a-879e-ebcbc56b57fc/processedChecks?checkId=999a1163-6e32-47fd-b9b8-085e198729b2 'apiture:uploadFrontImage': href: 'https://api.example.bank/uploadUri' 'apiture:frontImageContent': href: >- https://api.example.bank/checkDeposits/checkDeposits/f6c321e6-c628-419a-879e-ebcbc56b57fc/checks/999a1163-6e32-47fd-b9b8-085e198729b2/images/front/content 'apiture:frontImage': href: >- https://api.example.bank/checkDeposits/checkDeposits/f6c321e6-c628-419a-879e-ebcbc56b57fc/checks/999a1163-6e32-47fd-b9b8-085e198729b2/images/front 'apiture:uploadBackImage': href: 'https://api.example.bank/uploadUri' 'apiture:backImageContent': href: >- https://api.example.bank/checkDeposits/checkDeposits/f6c321e6-c628-419a-879e-ebcbc56b57fc/checks/999a1163-6e32-47fd-b9b8-085e198729b2/images/back/content 'apiture:backImage': href: >- https://api.example.bank/checkDeposits/checkDeposits/f6c321e6-c628-419a-879e-ebcbc56b57fc/checks/999a1163-6e32-47fd-b9b8-085e198729b2/images/back state: pending createdAt: '2019-01-20T05:54:52.375Z' description: check from Jim enteredAmount: '55.10' scannedAmount: '55.10' scannedAmountConfidence: 0.92 scannedMicr: V902810V T121143260T333222444V scannedCheckNumber: '902810' riskWarnings: - type: payeeAccountHolderMismatch label: Payee name does not match Account owner description: The payee name of the check does not match the name of the owner of the account to deposit into. - _id: 999a1163-6e32-47fd-b9b8-085e198729b2 _profile: 'https://api.apiture.com/schemas/checkDeposits/check/v1.0.0/profile.json' _links: self: href: >- https://api.example.bank/checkDeposits/checkDeposits/f6c321e6-c628-419a-879e-ebcbc56b57fc/checks/999a1163-6e32-47fd-b9b8-085e198729b2 'apiture:process': href: >- https://api.example.bank/checkDeposits/checkDeposits/f6c321e6-c628-419a-879e-ebcbc56b57fc/processedChecks?checkId=999a1163-6e32-47fd-b9b8-085e198729b2 'apiture:uploadFrontImage': href: 'https://api.example.bank/some-upload-uri' 'apiture:frontImageContent': href: >- https://api.example.bank/checkDeposits/checkDeposits/f6c321e6-c628-419a-879e-ebcbc56b57fc/checks/999a1163-6e32-47fd-b9b8-085e198729b2/images/front/content 'apiture:frontImage': href: >- https://api.example.bank/checkDeposits/checkDeposits/f6c321e6-c628-419a-879e-ebcbc56b57fc/checks/999a1163-6e32-47fd-b9b8-085e198729b2/images/front 'apiture:uploadBackImage': href: 'https://api.example.bank/some-upload-uri' 'apiture:backImageContent': href: >- https://api.example.bank/checkDeposits/checkDeposits/f6c321e6-c628-419a-879e-ebcbc56b57fc/checks/999a1163-6e32-47fd-b9b8-085e198729b2/images/back/content 'apiture:backImage': href: >- https://api.example.bank/checkDeposits/checkDeposits/f6c321e6-c628-419a-879e-ebcbc56b57fc/checks/999a1163-6e32-47fd-b9b8-085e198729b2/images/back state: pending createdAt: '2019-01-20T05:54:52.375Z' description: check from Jim enteredAmount: '55.10' scannedAmount: '55.10' scannedAmountConfidence: 0.92 scannedMicr: V902810V T121143260T333222444V scannedCheckNumber: '902810' riskWarnings: - type: payeeAccountHolderMismatch label: Payee name does not match Account owner description: The payee name of the check does not match the name of the owner of the account to deposit into. x-apiture-composition: - $ref: '#/components/schemas/summaryCheckDeposit' - properties: - checks - confirmationId properties: _links: description: 'An optional map of links, mapping each link relation to a link object. This model defines the `_links` object of HAL representations.' allOf: - $ref: '#/components/schemas/links' _embedded: description: 'An optional map of nested resources, mapping each nested resource name to a nested resource representation.' type: object _profile: description: 'The URI of a [resource profile](https://developer.apiture.com/docs/concepts/profiles/) which describes the representation.' type: string format: uri _error: description: An object which describes an error. This value is omitted if the operation succeeded without error. type: object allOf: - $ref: '#/components/schemas/error' _id: description: The unique identifier for this account resource. This is an immutable opaque string. readOnly: true type: string state: $ref: '#/components/schemas/checkDepositState' description: description: Description for the deposit. type: string example: Check from Jim depositedAmount: description: >- The total USD amount of the check deposit after it was successfully deposited. This number is immutable and only available after the check deposit was accepted by the FI and has state 'accepted' or 'acceptedWithRejections'. The numeric value is represented as a string so that it can be exact with no loss of precision. type: string readOnly: true example: '1023.22' enteredAmount: description: >- The USD amount of the deposit entered by the user. The numeric value is represented as a string so that it can be exact with no loss of precision. type: string example: '215.10' scannedAmount: description: >- The total USD amount of the deposit read by OCR. The numeric value is represented as a string so that it can be exact with no loss of precision. type: string readOnly: true example: '214.10' checkCount: description: The current count of checks in the deposit batch. type: number readOnly: true example: 3 createdAt: description: 'The date-time the check deposit was created. This is an [RFC 3339](https://tools.ietf.org/html/rfc3339) UTC time stamp.' type: string format: date-time readOnly: true submittedAt: description: 'The date-time the check deposit was submitted. This is an [RFC 3339](https://tools.ietf.org/html/rfc3339) UTC time stamp.' type: string format: date-time readOnly: true acceptedAt: description: >- The date-time the check deposit was accepted. This does not mean the checks have cleared, only that the deposit has been posted. This is an [RFC 3339](https://tools.ietf.org/html/rfc3339) UTC time stamp. type: string format: date-time readOnly: true checks: description: Checks included in the Check Deposit. type: array readOnly: true items: $ref: '#/components/schemas/check' confirmationId: description: The confirmation id that the deposit request was received for processing. type: string readOnly: true example: '3019489393' type: object x-apiture-flattened: true checkDepositWithEligibleAccounts: x-apiture-version: 1.0.0 title: Check Deposit with Eligble Accounts (v1.0.0) description: >- Check deposit resource. Checks are added to this before being deposited. This response also include a list of eligble check deposit target accounts in `_embedded.eligbleAccounts`. This schema is the existing [`checkDeposit`](#schema-checkDeposit) schema, with the added `_embedded` objects found only in this response. x-apiture-composition: - $ref: '#/components/schemas/checkDeposit' - properties: - _embedded properties: _links: description: 'An optional map of links, mapping each link relation to a link object. This model defines the `_links` object of HAL representations.' allOf: - $ref: '#/components/schemas/links' _embedded: description: Embedded objects. allOf: - $ref: '#/components/schemas/checkDepositEmbeddedObjects' _profile: description: 'The URI of a [resource profile](https://developer.apiture.com/docs/concepts/profiles/) which describes the representation.' type: string format: uri _error: description: An object which describes an error. This value is omitted if the operation succeeded without error. type: object allOf: - $ref: '#/components/schemas/error' _id: description: The unique identifier for this account resource. This is an immutable opaque string. readOnly: true type: string state: $ref: '#/components/schemas/checkDepositState' description: description: Description for the deposit. type: string example: Check from Jim depositedAmount: description: >- The total USD amount of the check deposit after it was successfully deposited. This number is immutable and only available after the check deposit was accepted by the FI and has state 'accepted' or 'acceptedWithRejections'. The numeric value is represented as a string so that it can be exact with no loss of precision. type: string readOnly: true example: '1023.22' enteredAmount: description: >- The USD amount of the deposit entered by the user. The numeric value is represented as a string so that it can be exact with no loss of precision. type: string example: '215.10' scannedAmount: description: >- The total USD amount of the deposit read by OCR. The numeric value is represented as a string so that it can be exact with no loss of precision. type: string readOnly: true example: '214.10' checkCount: description: The current count of checks in the deposit batch. type: number readOnly: true example: 3 createdAt: description: 'The date-time the check deposit was created. This is an [RFC 3339](https://tools.ietf.org/html/rfc3339) UTC time stamp.' type: string format: date-time readOnly: true submittedAt: description: 'The date-time the check deposit was submitted. This is an [RFC 3339](https://tools.ietf.org/html/rfc3339) UTC time stamp.' type: string format: date-time readOnly: true acceptedAt: description: >- The date-time the check deposit was accepted. This does not mean the checks have cleared, only that the deposit has been posted. This is an [RFC 3339](https://tools.ietf.org/html/rfc3339) UTC time stamp. type: string format: date-time readOnly: true checks: description: Checks included in the Check Deposit. type: array readOnly: true items: $ref: '#/components/schemas/check' confirmationId: description: The confirmation id that the deposit request was received for processing. type: string readOnly: true example: '3019489393' type: object x-apiture-flattened: true check: title: Check (v1.0.0) description: > Check resource. The `apiture:reject` link invokes the `rejectCheck` operation to reject an invalid check (`POST`); it is present if the `rejectCheck` operation is available for the check. Response and request bodies using this check schema may contain the following links:
RelSummaryMethod
thisFetch a check depositGET
apiture:target Target account where the checks are deposited'GET
apiture:uploadFrontImage Upload check front imageGET
apiture:uploadBackImage Upload check check imageGET
apiture:frontImage Get check front image metadataGET
apiture:frontImageContent Get check fron image fileGET
apiture:backImage Get check back image metadataGET
apiture:backImageContent Get check back image fileGET
apiture:rejectReject a checkPOST
apiture:processProcess a checkPOST
x-apiture-links: - rel: this operationId: getCheckDeposit - rel: 'apiture:target' title: Target account where the checks are deposited' - rel: 'apiture:uploadFrontImage' title: Upload check front image operation: post - rel: 'apiture:uploadBackImage' title: Upload check check image operation: post - rel: 'apiture:frontImage' title: Get check front image metadata operation: get - rel: 'apiture:frontImageContent' title: Get check fron image file operation: get - rel: 'apiture:backImage' title: Get check back image metadata operation: get - rel: 'apiture:backImageContent' title: Get check back image file operation: get - rel: 'apiture:reject' operationId: rejectCheck - rel: 'apiture:process' operationId: processCheck example: _id: 999a1163-6e32-47fd-b9b8-085e198729b2 _profile: 'https://api.apiture.com/schemas/checkDeposits/check/v1.0.0/profile.json' _links: self: href: 'https://api.example.bank/checkDeposits/checkDeposits/f6c321e6-c628-419a-879e-ebcbc56b57fc/checks/999a1163-6e32-47fd-b9b8-085e198729b2' 'apiture:process': href: >- https://api.example.bank/checkDeposits/checkDeposits/f6c321e6-c628-419a-879e-ebcbc56b57fc/processedChecks?checkId=999a1163-6e32-47fd-b9b8-085e198729b2 'apiture:reject': href: >- https://api.example.bank/checkDeposits/checkDeposits/f6c321e6-c628-419a-879e-ebcbc56b57fc/rejectedChecks?checkId=999a1163-6e32-47fd-b9b8-085e198729b2 'apiture:uploadFrontImage': href: 'https://api.example.bank/uploadUri' 'apiture:frontImageContent': href: >- https://api.example.bank/checkDeposits/checkDeposits/f6c321e6-c628-419a-879e-ebcbc56b57fc/checks/999a1163-6e32-47fd-b9b8-085e198729b2/images/front/content 'apiture:frontImage': href: >- https://api.example.bank/checkDeposits/checkDeposits/f6c321e6-c628-419a-879e-ebcbc56b57fc/checks/999a1163-6e32-47fd-b9b8-085e198729b2/images/front 'apiture:uploadBackImage': href: 'https://api.example.bank/uploadUri' 'apiture:backImageContent': href: >- https://api.example.bank/checkDeposits/checkDeposits/f6c321e6-c628-419a-879e-ebcbc56b57fc/checks/999a1163-6e32-47fd-b9b8-085e198729b2/images/back/content 'apiture:backImage': href: >- https://api.example.bank/checkDeposits/checkDeposits/f6c321e6-c628-419a-879e-ebcbc56b57fc/checks/999a1163-6e32-47fd-b9b8-085e198729b2/images/back state: pending createdAt: '2019-01-20T05:54:52.375Z' description: check from Jim enteredAmount: '55.10' scannedAmount: '55.10' scannedAmountConfidence: 0.92 scannedMicr: V902810V T121143260T333222444V scannedCheckNumber: '902810' riskWarnings: - type: payeeAccountHolderMismatch label: Payee name does not match Account owner description: The payee name of the check does not match the name of the owner of the account to deposit into. x-apiture-version: 1.0.0 x-apiture-composition: - $ref: '#/components/schemas/abstractResource' - properties: - _id - description - state - riskRejections - riskErrors - riskWarnings - riskInfo - enteredAmount - scannedAmount - scannedAmountConfidence - scannedMicr - scannedCheckNumber - attributes properties: _links: description: 'An optional map of links, mapping each link relation to a link object. This model defines the `_links` object of HAL representations.' allOf: - $ref: '#/components/schemas/links' _embedded: description: 'An optional map of nested resources, mapping each nested resource name to a nested resource representation.' type: object _profile: description: 'The URI of a [resource profile](https://developer.apiture.com/docs/concepts/profiles/) which describes the representation.' type: string format: uri _error: description: An object which describes an error. This value is omitted if the operation succeeded without error. type: object allOf: - $ref: '#/components/schemas/error' _id: description: The unique identifier for this check deposit resource. This is an immutable opaque string. readOnly: true type: string description: description: Description for the check. type: string example: Check from Jim state: $ref: '#/components/schemas/checkState' riskRejections: description: >- Risk factors indicating the check has been rejected and can't be corrected. If a check contains any rejection risk factors, the check must be removed from the check deposit. A check deposit can't be submitted if any of its checks contain rejection risk factors. type: array items: $ref: '#/components/schemas/riskFactor' riskErrors: description: >- Risk factors indicating the check has errors which must be corrected before the check deposit can be submitted. Modifying the check data and re-processing may resolve errors. A check deposit can't be submitted if any of its checks contain error risk factors. type: array items: $ref: '#/components/schemas/riskFactor' riskWarnings: description: >- Risk factors indicating the check has warnings. Warnings do not prevent a check from being deposited, but are helpful to show the user to catch any potential issues before submission. A check deposit can still be submitted if checks contain warnings. type: array items: $ref: '#/components/schemas/riskFactor' riskInfo: description: Various additional diagnostic information about the check. type: array items: $ref: '#/components/schemas/riskFactor' enteredAmount: description: >- The USD amount of the check entered by the user. The numeric value is represented as a string so that it can be exact with no loss of precision. type: string example: '215.10' scannedAmount: description: >- The USD amount of the check read by OCR. This value may only be available after processing is complete. The numeric value is represented as a string so that it can be exact with no loss of precision. type: string readOnly: true example: '214.10' scannedAmountConfidence: description: 'Indicates the confidence in the accuracy of the `scannedAmount` value, from lowest confidence `0.0` to highest confidence, `1.0`.' minimum: 0 maximum: 1 type: number readOnly: true example: 0.6 scannedMicr: description: >- The scanned _magnetic ink character recognition_ (MICR) number from the check image. This value encodes the routing number, account number, check number, check amount, and other data from the check. This value is only be available after processing is complete. type: string readOnly: true example: V902810V T121143260T333222444V scannedCheckNumber: description: The number of the check read by OCR. This value may only be available after processing is complete. type: string readOnly: true example: '902810' attributes: $ref: '#/components/schemas/attributes' type: object x-apiture-flattened: true riskFactor: title: Risk Factor (v1.0.0) description: Diagnostic information about the check. type: object example: _links: help: href: '{uri of help website for risk factor}' type: payeeAccountHolderMismatch label: Payee name does not match Account owner description: |- The payee name of the check does not match the name of the owner of the account to deposit into. x-apiture-version: 1.0.0 x-apiture-composition: - $ref: '#/components/schemas/abstractResource' - properties: - type - label - description - attributes properties: _links: description: 'An optional map of links, mapping each link relation to a link object. This model defines the `_links` object of HAL representations.' allOf: - $ref: '#/components/schemas/links' _embedded: description: 'An optional map of nested resources, mapping each nested resource name to a nested resource representation.' type: object _profile: description: 'The URI of a [resource profile](https://developer.apiture.com/docs/concepts/profiles/) which describes the representation.' type: string format: uri _error: description: An object which describes an error. This value is omitted if the operation succeeded without error. type: object allOf: - $ref: '#/components/schemas/error' type: description: The risk factor type. type: string label: description: A short label identifying the risk factor. type: string description: description: A longer description with information about the risk factor. This may include recovery options in the case of warnings or errors. type: string attributes: description: 'Data attribute associated with the risk factor, such as values or constraints.' allOf: - $ref: '#/components/schemas/attributes' x-apiture-flattened: true checkImage: title: Check Image (v1.0.0) description: >- Representation of a check image file. The image may contain an `apiture:uploadUrl` link within the item's `_links`. The client should next `PUT` the file content to the upload URLs. The file must be an image with JPEG format. If file content has been uploaded, the image may have an `apiture:content` link to access the direct URI of the file's content. example: _id: 7dc00a42-76f9-4bbb-bda3-bd6ed203c01b _profile: 'https://api.apiture.com/schemas/checkDeposits/checkImage/v1.0.0/profile.json' _links: self: href: /checkDeposits/checkDeposits/f6c321e6-c628-419a-879e-ebcbc56b57fc/checks/999a1163-6e32-47fd-b9b8-085e198729b2/images/front 'apiture:content': href: /checkDeposits/checkDeposits/f6c321e6-c628-419a-879e-ebcbc56b57fc/checks/999a1163-6e32-47fd-b9b8-085e198729b2/images/front/content name: frontImage.jpeg contentType: image/jpeg description: Front check image captured and uploaded from an iPhoneX. sizeBytes: 112800 createdAt: '2019-01-04T07:00:49.375Z' x-apiture-version: 1.0.0 x-apiture-composition: - $ref: '#/components/schemas/abstractResource' - properties: - name - description - contentType - sizeBytes - createdAt properties: _links: description: 'An optional map of links, mapping each link relation to a link object. This model defines the `_links` object of HAL representations.' allOf: - $ref: '#/components/schemas/links' _embedded: description: 'An optional map of nested resources, mapping each nested resource name to a nested resource representation.' type: object _profile: description: 'The URI of a [resource profile](https://developer.apiture.com/docs/concepts/profiles/) which describes the representation.' type: string format: uri _error: description: An object which describes an error. This value is omitted if the operation succeeded without error. type: object allOf: - $ref: '#/components/schemas/error' name: description: >- The file name, for identification purposes. File names may include file extensions such as `.jpeg` for JPEG images, although the system does not validate or ensure that extensions match the file content type. This is limited to 64 characters and may not contain certain special characters such as / or \\. If omitted, the system will assign a name. type: string maxLength: 64 description: description: A description of this file and its contents. type: string maxLength: 4096 contentType: description: 'The [media type](https://tools.ietf.org/html/rfc6838) for this file.' type: string example: image/jpeg sizeBytes: description: The file size in bytes. This is a derived property and cannot be modified in updates. type: number readOnly: true createdAt: description: The date-time when the image was created or uploaded. type: string format: date-time readOnly: true type: object x-apiture-flattened: true device: title: Device Data (v1.0.0) description: Diagnostic information about the client device. type: object properties: id: description: Unique identifier of the device originating the request. This can be any unique value to identify the client device. type: string type: description: >- The type of device originating the request. This is a high level indicator for the type of the client device. iPhone, Android, Web Browser are examples. type: string operatingSystem: description: 'The operating system of the device originating the request. iOS, Android, macOS, Windows, Linux are examples.' type: string operatingSystemVersion: description: The version of the operating system of the device originating the request. type: string make: description: 'The make of the device originating the request. Apple, Google, Motorola, Dell are examples.' type: string model: description: 'The model of the device originating the request. iPhoneXs, Pixel3, G2qx, MacbookPro13 are examples.' type: string example: id: 8b1e09ee-49cd-47c1-bd72-837432296e3c type: iPhone operatingSystem: iOS operatingSystemVersion: 13.2.1 make: Apple model: iPhoneXs x-apiture-version: 1.0.0 x-apiture-flattened: true checkDepositState: title: Check Deposit State (v1.0.0) description: |- The state of the check deposit. This field is immutable and derived. checkDepositState strings may have one of the following [enumerated values](https://developer.apiture.com/concepts/label-groups#enumerations):
ValueDescription
pendingPending
processingProcessing
validValid
invalidInvalid
submittedSubmitted
acceptedAccepted
rejectedRejected
acceptedWithRejectionsAccepted with Rejections
These enumeration values are further described by the [label group](https://developer.apiture.com/concepts/label-groups) named `checkDepositState` in the response from the [`getLabels`](#op-getLabels) operation. type: string enum: - pending - processing - valid - invalid - submitted - accepted - rejected - acceptedWithRejections readOnly: true x-apiture-enum: checkDepositState example: submitted x-apiture-version: 1.0.0 x-apiture-flattened: true checkState: title: Check State (v1.0.0) description: |- The state of the check. This field is immutable and derived. checkState strings may have one of the following [enumerated values](https://developer.apiture.com/concepts/label-groups#enumerations):
ValueDescription
pendingPending
processingProcessing
validValid
invalidInvalid
submittedSubmitted
acceptedAccepted
rejectedRejected
These enumeration values are further described by the [label group](https://developer.apiture.com/concepts/label-groups) named `checkState` in the response from the [`getLabels`](#op-getLabels) operation. type: string enum: - pending - processing - valid - invalid - submitted - accepted - rejected readOnly: true x-apiture-enum: checkState example: processing x-apiture-version: 1.0.0 x-apiture-flattened: true checkDepositEmbeddedObjects: title: Check Deposit Embedded Objects (v1.0.0) type: object description: Objects embedded in the response from creating a new check deposit resource. required: - eligibleAccounts properties: eligibleAccounts: description: A list of account summaries of accounts eligble for check deposits. type: array items: $ref: '#/components/schemas/summaryAccount' x-apiture-version: 1.0.0 x-apiture-flattened: true labelGroups: title: Label Groups (v1.0.1) description: |- A set of named groups of labels, each of which contains multiple item labels. The abbreviated example shows two groups, one named `structure` and one named `estimatedAnnualRevenue`. The first has items with names such as `corporation`, `llc` and `soleProprietorship`, with text labels for each in the default and in French. The second has items for estimated revenue *ranges* but no localized labels. For example, the item named `from1to10Million` has the `label` "$1M to $10M" and the range `[1000000.00,10000000.00)`. This schema was resolved from [`common/labelGroups`](https://production.api.apiture.com/schemas/common/labelGroups/v1.0.1/model.json). x-apiture-version: 1.0.1 example: _profile: 'https://api.apiture.com/schemas/common/labelGroups/v1.0.1/profile.json' groups: structure: unknown: label: Unknown code: '0' hidden: true corporation: label: Corporation code: '1' variants: fr: label: Soci\u00e9t\u00e9 partnership: label: Partnership code: '2' variants: fr: label: Partenariat llc: label: Limited Liability Company code: '2' variants: fr: label: Soci\u00e9t\u00e9 \u00e9 Responsabilit\u00e9 Limit\u00e9e nonProfit: label: Non Profit code: '4' variants: fr: label: Non Lucratif financialInstitution: label: Financial Institution code: '8' variants: fr: label: Institution financi\u00e8re soleProprietorship: label: Sole Proprietorship code: '11' variants: fr: label: Entreprise individuelle other: label: Other code: '254' variants: fr: label: Autre estimatedAnnualRevenue: unknown: label: Unknown code: '0' under1Million: label: Under $1M code: '1' range: '[0,1000000.00)' from1to10Million: label: $1M to $10M code: '2' range: '[1000000.00,10000000.00)' from10to100Million: label: $10M to $100M code: '3' range: '[10000000.00,100000000.00)' over100Million: label: 'Over $100,000,000.00' code: '4' range: '[100000000.00,]' other: label: Other code: '254' x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/common/labelGroups/v1.0.1/model.json' x-apiture-namespace: common x-apiture-composition: - $ref: '#/components/schemas/abstractResource' - properties: - groups properties: _links: description: 'An optional map of links, mapping each link relation to a link object. This model defines the `_links` object of HAL representations.' allOf: - $ref: '#/components/schemas/links' _embedded: description: 'An optional map of nested resources, mapping each nested resource name to a nested resource representation.' type: object _profile: description: 'The URI of a [resource profile](https://developer.apiture.com/docs/concepts/profiles/) which describes the representation.' type: string format: uri _error: description: An object which describes an error. This value is omitted if the operation succeeded without error. type: object allOf: - $ref: '#/components/schemas/error' groups: description: 'Groups of localized labels. This maps *group names* → [*a group of labels*](#schema-labelgroup) within that group.' x-apiture-key: groupName additionalProperties: $ref: '#/components/schemas/labelGroup' type: object x-apiture-flattened: true root: x-apiture-version: 2.0.1 title: API Root (v2.0.1) description: |- A HAL response, with hypermedia `_links` for the top-level resources and operations in API. This schema was resolved from [`common/root`](https://production.api.apiture.com/schemas/common/root/v2.0.1/model.json). example: id: apiName name: API name apiVersion: 1.0.0 _profile: 'https://production.api.apiture.com/schemas/common/root/v2.0.1/profile.json' _links: {} x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/common/root/v2.0.1/model.json' x-apiture-namespace: common x-apiture-composition: - $ref: '#/components/schemas/abstractResource' - properties: - _id - name - apiVersion properties: _links: description: 'An optional map of links, mapping each link relation to a link object. This model defines the `_links` object of HAL representations.' allOf: - $ref: '#/components/schemas/links' _embedded: description: 'An optional map of nested resources, mapping each nested resource name to a nested resource representation.' type: object _profile: description: 'The URI of a [resource profile](https://developer.apiture.com/docs/concepts/profiles/) which describes the representation.' type: string format: uri _error: description: An object which describes an error. This value is omitted if the operation succeeded without error. type: object allOf: - $ref: '#/components/schemas/error' _id: description: This API's unique ID. readOnly: true type: string name: type: string description: This API's name. apiVersion: type: string description: This API's version. type: object x-apiture-flattened: true errorResponse: x-apiture-version: 2.0.0 title: Error Response (v2.0.0) description: |- Describes an error response, typically returned on 4xx or 5xx errors from API operations. The `_error` object contains the error details. This schema was resolved from [`common/errorResponse`](https://production.api.apiture.com/schemas/common/errorResponse/v2.0.0/model.json). example: _profile: 'https://api.apiture.com/schemas/common/errorResponse/v2.0.0/profile.json' _error: _id: 2eae46e1-575c-4d69-8a8f-0a7b0115a4b3 message: The value for deposit must be greater than 0. statusCode: 422 type: positiveNumberRequired attributes: value: -125.5 remediation: Provide a value which is greater than 0 occurredAt: '2018-01-25T05:50:52.375Z' _links: describedby: href: 'https://api.apiture.com/errors/positiveNumberRequired' _embedded: errors: [] x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/common/errorResponse/v2.0.0/model.json' x-apiture-namespace: common x-apiture-composition: - $ref: '#/components/schemas/abstractResource' properties: _links: description: 'An optional map of links, mapping each link relation to a link object. This model defines the `_links` object of HAL representations.' allOf: - $ref: '#/components/schemas/links' _embedded: description: 'An optional map of nested resources, mapping each nested resource name to a nested resource representation.' type: object _profile: description: 'The URI of a [resource profile](https://developer.apiture.com/docs/concepts/profiles/) which describes the representation.' type: string format: uri _error: description: An object which describes an error. This value is omitted if the operation succeeded without error. type: object allOf: - $ref: '#/components/schemas/error' type: object x-apiture-flattened: true configuration: x-apiture-version: 2.0.0 title: Configuration description: >- Represents the configuration for various services. This schema was resolved from [`configurations/configuration`](https://api.apiture.com/schemas/configurations/configuration/v2.0.0/model.json). properties: _links: $ref: '#/components/schemas/links' example: _links: self: href: /configurations/configurations/ 'apiture:groups': href: /configurations/configurations/groups x-apiture-resolved-from: 'https://api.apiture.com/schemas/configurations/configuration/v2.0.0/model.json' x-apiture-namespace: configurations type: object x-apiture-flattened: true configurationGroups: x-apiture-version: 2.0.0 title: Configuration Group Collection description: >- Collection of configuration groups. The items in the collection are ordered in the `_embedded` object with name `items`. The top-level `_links` object may contain pagination links (`self`, `next`, `prev`, `first`, `last`, `collection`). This schema was resolved from [`configurations/configurationGroups`](https://production.api.apiture.com/schemas/configurations/configurationGroups/v2.0.0/model.json). example: _profile: 'https://production.api.apiture.com/schemas/configurations/configurationGroups/v2.0.0/profile.json' start: 10 limit: 10 count: 67 name: configurationGroups _links: self: href: /configurations/configurations/groups?start=10&limit=10 first: href: /configurations/configurations/groups?start=0&limit=10 next: href: /configurations/configurations/groups?start=20&limit=10 collection: href: /configurations/configurations/groups _embedded: items: anyOf: - _profile: 'https://api.apiture.com/schemas/configurations/configurationGroup/v2.0.0/profile.json' _links: self: href: /configurations/groups/basic name: basic label: Basic Settings description: The basic settings for the Transfers API - _profile: 'https://api.apiture.com/schemas/configurations/configurationGroup/v2.0.0/profile.json' _links: self: href: /configurations/groups/calendar name: calendar label: Calendar description: 'A calendar that specifies which dates are valid for performing transfers (e.g., weekdays excluding federal holidays)' x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/configurations/configurationGroups/v2.0.0/model.json' x-apiture-namespace: configurations x-apiture-composition: - $ref: '#/components/schemas/collection' - properties: - _embedded properties: _links: description: 'An optional map of links, mapping each link relation to a link object. This model defines the `_links` object of HAL representations.' allOf: - $ref: '#/components/schemas/links' _embedded: description: Embedded objects. type: object properties: items: description: An array containing a page of configuration group items. type: array items: $ref: '#/components/schemas/configurationGroupSummary' _profile: description: 'The URI of a [resource profile](https://developer.apiture.com/docs/concepts/profiles/) which describes the representation.' type: string format: uri _error: description: An object which describes an error. This value is omitted if the operation succeeded without error. type: object allOf: - $ref: '#/components/schemas/error' count: description: >- The number of items in the collection. This value is _optional_ and may be omitted if the count is not computable efficiently. If a filter is applied to the collection (either implicitly or explicitly), the count, if present, indicates the number of items that satisfy the filter. type: integer start: description: The start index of this page of items. type: integer limit: description: The maximum number of items per page. type: integer name: description: The name of the collection. type: string type: object x-apiture-flattened: true configurationGroup: x-apiture-version: 2.0.0 title: Configuration Group description: >- Represents a configuration group. This schema was resolved from [`configurations/configurationGroup`](https://production.api.apiture.com/schemas/configurations/configurationGroup/v2.0.0/model.json). example: _profile: 'https://api.apiture.com/schemas/configurations/configurationGroup/v2.0.0/profile.json' _links: self: href: /configurations/groups/basic name: basic label: Basic Settings description: The basic settings for the Transfers API schema: type: object properties: dailyLimit: type: number description: The daily limit for the number of transfers cutoffTime: type: string format: time description: The cutoff time for scheduling transfers for the current day values: dailyLimit: 5 cutoffTime: '17:30:00' x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/configurations/configurationGroup/v2.0.0/model.json' x-apiture-namespace: configurations x-apiture-composition: - $ref: '#/components/schemas/configurationGroupSummary' - properties: - schema - values properties: _links: description: 'An optional map of links, mapping each link relation to a link object. This model defines the `_links` object of HAL representations.' allOf: - $ref: '#/components/schemas/links' _embedded: description: 'An optional map of nested resources, mapping each nested resource name to a nested resource representation.' type: object _profile: description: 'The URI of a [resource profile](https://developer.apiture.com/docs/concepts/profiles/) which describes the representation.' type: string format: uri _error: description: An object which describes an error. This value is omitted if the operation succeeded without error. type: object allOf: - $ref: '#/components/schemas/error' name: description: 'The name of this configuration group, must be unique within the set of all resources of this type.' type: string maxLength: 48 minLength: 1 pattern: '[a-zA-Z][-\w_]*' example: transfers label: description: 'The text label for this resource, suitable for presentation to the client.' type: string maxLength: 128 minLength: 1 example: Transfers Configuration description: description: 'The full description for this resource, suitable for presentation to the client.' type: string maxLength: 4096 minLength: 1 example: The configuration for the Transfers API. schema: $ref: '#/components/schemas/configurationSchema' values: $ref: '#/components/schemas/configurationValues' type: object x-apiture-flattened: true configurationSchema: x-apiture-version: 2.0.1 title: Configuration Schema (v2.0.1) description: >- The schema which defines the name and types of the variables that are part of this configuration definition. Property names must be simple identifiers which follow the pattern `letter [letter | digit | - | _]*`. This is implicitly a schema for `type: object` and contains the properties. The `values` in a configuration conform to the schema. The names and types are described with a subset of [JSON Schema Core](https://tools.ietf.org/html/draft-zyp-json-schema-04) and [JSON Schema Validation](https://tools.ietf.org/html/draft-fge-json-schema-validation-00) similar to that used to define schemas in [OpenAPI Specification 2.0](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#schemaObject). This schema was resolved from [`configurations/configurationSchema`](https://production.api.apiture.com/schemas/configurations/configurationSchema/v2.0.1/model.json). type: object additionalProperties: $ref: '#/components/schemas/configurationSchemaValue' example: type: object properties: dailyLimit: type: number description: The daily limit for the number of transfers cutoffTime: type: string format: time description: The cutoff time for scheduling transfers for the current day x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/configurations/configurationSchema/v2.0.1/model.json' x-apiture-namespace: configurations properties: {} x-apiture-flattened: true configurationValues: x-apiture-version: 2.0.0 title: Configuration Values (v2.0.0) description: >- The data values associated with this configuration group: the group's variable names and values. These values must conform to this item's `schema`. *Note*: the `schema` may also contain `default` values which, if present, are used if a value is *not* set in the definition's `values`. For example, multiple configurations may use the same schema that defines values `a`, `b`, and `c`, but each configuration may have their own unique values for `a`, `b`, and `c` which is separate from the schema. This schema was resolved from [`configurations/configurationValues`](https://production.api.apiture.com/schemas/configurations/configurationValues/v2.0.0/model.json). type: object additionalProperties: $ref: '#/components/schemas/configurationValue' example: dailyLimit: 5 cutoffTime: 63000 x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/configurations/configurationValues/v2.0.0/model.json' x-apiture-namespace: configurations properties: {} x-apiture-flattened: true abstractResource: x-apiture-version: 2.0.0 title: Abstract Resource (v2.0.0) description: >- An abstract schema used to define other schemas for request and response bodies. This is a [HAL](https://tools.ietf.org/html/draft-kelly-json-hal-08) resource representation. This model contains hypermedia `_links`, and either optional domain object data with `_profile` and optional `_embedded` objects, or an `_error` object. In responses, if the operation was successful, this object will not include the `_error`, but if the operation was a 4xx or 5xx error, this object will not include `_embedded` or any data fields, only `_error` and optionally `_links`. This schema was resolved from [`common/abstractResource`](https://production.api.apiture.com/schemas/common/abstractResource/v2.0.0/model.json). example: _profile: '{uri of resource profile.json}' _links: self: href: '{uri of current resource}' x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/common/abstractResource/v2.0.0/model.json' x-apiture-namespace: common x-apiture-composition: - $ref: '#/components/schemas/abstractRequest' - properties: - _error properties: _links: description: 'An optional map of links, mapping each link relation to a link object. This model defines the `_links` object of HAL representations.' allOf: - $ref: '#/components/schemas/links' _embedded: description: 'An optional map of nested resources, mapping each nested resource name to a nested resource representation.' type: object _profile: description: 'The URI of a [resource profile](https://developer.apiture.com/docs/concepts/profiles/) which describes the representation.' type: string format: uri _error: description: An object which describes an error. This value is omitted if the operation succeeded without error. type: object allOf: - $ref: '#/components/schemas/error' type: object x-apiture-flattened: true collection: x-apiture-version: 2.0.0 title: Collection (v2.0.0) description: |- A collection of resources. This is an abstract model schema which is extended to define specific resource collections. This schema was resolved from [`common/collection`](https://production.api.apiture.com/schemas/common/collection/v2.0.0/model.json). x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/common/collection/v2.0.0/model.json' x-apiture-namespace: common x-apiture-composition: - $ref: '#/components/schemas/abstractResource' - properties: - count - start - limit - name properties: _links: description: 'An optional map of links, mapping each link relation to a link object. This model defines the `_links` object of HAL representations.' allOf: - $ref: '#/components/schemas/links' _embedded: description: 'An optional map of nested resources, mapping each nested resource name to a nested resource representation.' type: object _profile: description: 'The URI of a [resource profile](https://developer.apiture.com/docs/concepts/profiles/) which describes the representation.' type: string format: uri _error: description: An object which describes an error. This value is omitted if the operation succeeded without error. type: object allOf: - $ref: '#/components/schemas/error' count: description: >- The number of items in the collection. This value is _optional_ and may be omitted if the count is not computable efficiently. If a filter is applied to the collection (either implicitly or explicitly), the count, if present, indicates the number of items that satisfy the filter. type: integer start: description: The start index of this page of items. type: integer limit: description: The maximum number of items per page. type: integer name: description: The name of the collection. type: string type: object x-apiture-flattened: true attributes: x-apiture-version: 2.0.0 title: Attributes (v2.0.0) description: |- An optional map of name/value pairs which contains additional dynamic data about the resource. This schema was resolved from [`common/attributes`](https://production.api.apiture.com/schemas/common/attributes/v2.0.0/model.json). type: object x-apiture-key: attributeName additionalProperties: $ref: '#/components/schemas/attributeValue' x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/common/attributes/v2.0.0/model.json' x-apiture-namespace: common properties: {} x-apiture-flattened: true summaryAccount: x-apiture-version: 2.6.0 title: Account Summary (v2.6.0) description: >- Summary representation of an account resource in accounts collections. This representation normally does not contain any `_embedded` objects. If needed, call the `GET` operation on the item's `self` link to get `_embedded` objects. By default, not all account fields are set when paging through accounts via the collection. The following fields are not set unless the collection request includes `?fields=*`: * `balance` * `interest` * `cd` Additionally, the `summaryAccount` representation does not support the full set of links or the nested owners, beneficiaries, and authorized signers available in the `account` schema returned by the [`getAccount`](#op-getAccount) operation (`GET /accounts/{accountId}`). This schema was resolved from [`accounts/summaryAccount`](https://production.api.apiture.com/schemas/accounts/summaryAccount/v2.6.0/model.json). example: _id: 0399abed-fd3d-4830-a88b-30f38b8a365c _profile: 'https://api.apiture.com/schemas/accounts/summaryAccount/v2.6.0/profile.json' _links: self: href: /accounts/accounts/0399abed-fd3d-4830-a88b-30f38b8a365c 'apiture:product': href: /products/products/0aba4bae-f18b-4c12-af99-5f8dbd682ae3 name: My savings description: My Basic savings account routingNumber: '021000021' institutionName: Canapi Bank state: active title: John Smith ifxType: SDA allowsTransfers: true accountNumbers: full: '9876543210' masked: '*************3210' balance: current: '3450.30' available: '3450.30' currency: USD openedAt: '2019-04-30T10:01:07.375Z' paymentsEnabled: false checkOrderingEnabled: false x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/accounts/summaryAccount/v2.6.0/model.json' x-apiture-namespace: accounts x-apiture-composition: - $ref: '#/components/schemas/abstractResource' - $ref: '#/components/schemas/accountFields' properties: _links: description: 'An optional map of links, mapping each link relation to a link object. This model defines the `_links` object of HAL representations.' allOf: - $ref: '#/components/schemas/links' _embedded: description: 'An optional map of nested resources, mapping each nested resource name to a nested resource representation.' type: object _profile: description: 'The URI of a [resource profile](https://developer.apiture.com/docs/concepts/profiles/) which describes the representation.' type: string format: uri _error: description: An object which describes an error. This value is omitted if the operation succeeded without error. type: object allOf: - $ref: '#/components/schemas/error' name: description: The user-assigned name of this account. type: string maxLength: 128 minLength: 1 description: description: The user-assigned description of this account. type: string maxLength: 4096 minLength: 1 interestPolicy: description: >- How interest credits on the account (if any) are disbursed. This field is `none` for non-interest bearing accounts. If this is `transfer`, the `apiture:interestTargetAccount` link in the account's `_link` references the target account for the disbursements. This field applies if the account is a CD (Certificate of Deposit a.k.a. Time Deposit) account. allOf: - $ref: '#/components/schemas/interestPolicy' _id: description: The unique identifier for this account resource. This is an immutable opaque string. readOnly: true type: string state: description: The state of the internal account. readOnly: true allOf: - $ref: '#/components/schemas/internalAccountState' title: description: The name of the account holder. This is derived from the user resource. type: string maxLength: 512 example: John Smith productName: description: The name of the banking product that this account is an instance of. This is derived from the product resource. type: string maxLength: 128 minLength: 1 readOnly: true type: description: >- The name of the banking product type. This is derived from the _product_ resource. The `subtype` is more specific; `type` is a broad account category. type: string maxLength: 128 minLength: 1 readOnly: true subtype: description: The name of the banking product sub type. This is derived from the _product_ resource. This is more specific than the `type`. type: string maxLength: 128 minLength: 1 readOnly: true ifxType: description: 'A code which identifies the product type. This is one of the [IFX AcctType](https://ifxforum.org) values.' allOf: - $ref: '#/components/schemas/ifxType' accountNumbers: description: Different representations of the account number. allOf: - $ref: '#/components/schemas/accountNumbers' balance: description: The account balance. readOnly: true allOf: - $ref: '#/components/schemas/balance' allowsTransfers: type: boolean description: 'If `true`, the account is open to deposits and credits such as transfers or rollovers.' readOnly: true default: true openedAt: description: 'The date-time the account was opened. This is an [RFC 3339](https://tools.ietf.org/html/rfc3339) UTC time stamp.' type: string format: date-time readOnly: true interest: description: Interest disbursement settings for the account. type: object allOf: - $ref: '#/components/schemas/interest' cd: description: Certificate of Deposit properties for the account. type: object allOf: - $ref: '#/components/schemas/cd' cycleWithdrawalCount: description: >- The number of withdrawals made against this account within the current statement cycle. For some deposit accounts such as savings accounts, this is limited to a maximum defined in the corresponding product's constraints. If exceeded over multiple statement cycles, the financial institution may convert the account to a demand deposit (checking) account. type: integer readOnly: true minimum: 0 example: 2 institutionName: description: 'The name of the financial institution (FI), derived from the FI''s configuration.' type: string minLength: 2 maxLength: 128 readOnly: true example: Canapi Bank routingNumber: description: >- The account routing number which identifies the financial institution (FI). The full routing number is derived from the FI's configuration. type: string minLength: 9 maxLength: 9 readOnly: true example: '021000021' paymentsEnabled: description: >- If true, payments features such as bill pay are enabled and scheduled payments will debit from this account.
The property `paymentsEnabled` was added on version `2.5.0` of the schema.
The property `paymentsEnabled` was added on version `2.5.0` of the schema. type: boolean readOnly: true x-apiture-since: 2.5.0 checkOrderingEnabled: description: >- If `true`, the user requesting this account resource may order checks for this account through the Check Orders API. The account state must be `active` and the associated product must also enable check ordering.
The property `checkOrderingEnabled` was added on version `2.6.0` of the schema.
The property `checkOrderingEnabled` was added on version `2.6.0` of the schema. type: boolean readOnly: true default: false x-apiture-since: 2.6.0 type: object x-apiture-flattened: true configurationGroupSummary: x-apiture-version: 2.0.0 title: Configuration Group Summary (v2.0.0) description: >- A summary of the data contained within a configuration group resource. This schema was resolved from [`configurations/configurationGroupSummary`](https://production.api.apiture.com/schemas/configurations/configurationGroupSummary/v2.0.0/model.json). example: _profile: 'https://api.apiture.com/schemas/configurations/configurationGroupSummary/v2.0.0/profile.json' _links: self: href: /configurations/groups/basic name: basic label: Basic Settings description: The basic settings for the Transfers API x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/configurations/configurationGroupSummary/v2.0.0/model.json' x-apiture-namespace: configurations x-apiture-composition: - $ref: '#/components/schemas/abstractResource' - properties: - name - label - description properties: _links: description: 'An optional map of links, mapping each link relation to a link object. This model defines the `_links` object of HAL representations.' allOf: - $ref: '#/components/schemas/links' _embedded: description: 'An optional map of nested resources, mapping each nested resource name to a nested resource representation.' type: object _profile: description: 'The URI of a [resource profile](https://developer.apiture.com/docs/concepts/profiles/) which describes the representation.' type: string format: uri _error: description: An object which describes an error. This value is omitted if the operation succeeded without error. type: object allOf: - $ref: '#/components/schemas/error' name: description: 'The name of this configuration group, must be unique within the set of all resources of this type.' type: string maxLength: 48 minLength: 1 pattern: '[a-zA-Z][-\w_]*' example: transfers label: description: 'The text label for this resource, suitable for presentation to the client.' type: string maxLength: 128 minLength: 1 example: Transfers Configuration description: description: 'The full description for this resource, suitable for presentation to the client.' type: string maxLength: 4096 minLength: 1 example: The configuration for the Transfers API. type: object x-apiture-flattened: true abstractRequest: x-apiture-version: 2.0.0 title: Abstract Request (v2.0.0) description: >- An abstract schema used to define other request-only schemas. This is a [HAL](https://tools.ietf.org/html/draft-kelly-json-hal-08) resource representation, minus the `_error` defined in `abstractResource`. This schema was resolved from [`common/abstractRequest`](https://production.api.apiture.com/schemas/common/abstractRequest/v2.0.0/model.json). properties: _links: description: 'An optional map of links, mapping each link relation to a link object. This model defines the `_links` object of HAL representations.' allOf: - $ref: '#/components/schemas/links' _embedded: description: 'An optional map of nested resources, mapping each nested resource name to a nested resource representation.' type: object _profile: description: 'The URI of a [resource profile](https://developer.apiture.com/docs/concepts/profiles/) which describes the representation.' type: string format: uri example: _profile: '{uri of resource profile.json}' _links: self: href: '{uri of current resource}' x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/common/abstractRequest/v2.0.0/model.json' x-apiture-namespace: common type: object x-apiture-flattened: true error: x-apiture-version: 2.0.0 title: Error (v2.0.0) description: |- Describes an error in an API request or in a service called via the API. This schema was resolved from [`common/error`](https://production.api.apiture.com/schemas/common/error/v2.0.0/model.json). required: - message properties: message: type: string description: A localized message string describing the error condition. _id: description: >- A unique identifier for this error instance. This may be used as a correlation ID with the root cause error (i.e. this ID may be logged at the source of the error). This is is an opaque string. readOnly: true type: string statusCode: description: The HTTP status code associate with this error. type: integer minimum: 100 maximum: 599 example: 422 type: type: string description: >- An error identifier which indicates the category of error and associate it with API support documentation or which the UI tier can use to render an appropriate message or hint. This provides a finer level of granularity than the `statusCode`. For example, instead of just 400 Bad Request, the `type` may be much more specific. such as `integerValueNotInAllowedRange` or `numericValueExceedsMaximum` or `stringValueNotInAllowedSet`. occurredAt: type: string format: date-time description: 'An [RFC 3339](https://tools.ietf.org/html/rfc3339) UTC time stamp indicating when the error occurred.' example: '2018-02-02T03:37:15.375Z' attributes: description: >- Informative values or constraints which describe the error. For example, for a value out of range error, the attributes may specify the `minimum` and `maximum` values. This allows clients to present error messages as they see fit (the API does not assume the client/presentation tier). The set of attributes varies by error `type`. allOf: - $ref: '#/components/schemas/attributes' remediation: type: string description: An optional localized string which provides hints for how the user or client can resolve the error. errors: description: An optional array of nested error objects. This property is not always present. type: array items: $ref: '#/components/schemas/error' _links: $ref: '#/components/schemas/links' example: _id: 2eae46e1575c0a7b0115a4b3 message: Descriptive error message... statusCode: 422 type: errorType1 remediation: Remediation string... occurredAt: '2018-01-25T05:50:52.375Z' errors: - _id: ccdbe2c5c938a230667b3827 message: An optional embedded error - _id: dbe9088dcfe2460f229338a3 message: Another optional embedded error _links: describedby: href: 'https://developer.apiture.com/errors/errorType1' x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/common/error/v2.0.0/model.json' x-apiture-namespace: common type: object x-apiture-flattened: true configurationValue: x-apiture-version: 2.0.0 title: Configuration Value (v2.0.0) description: >- The data associated with this configuration. This schema was resolved from [`configurations/configurationValue`](https://production.api.apiture.com/schemas/configurations/configurationValue/v2.0.0/model.json). x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/configurations/configurationValue/v2.0.0/model.json' x-apiture-namespace: configurations type: object properties: {} x-apiture-flattened: true configurationSchemaValue: x-apiture-version: 2.0.0 title: Configuration Schema Value (v2.0.0) description: >- The data associated with this configuration schema. This schema was resolved from [`configurations/configurationSchemaValue`](https://production.api.apiture.com/schemas/configurations/configurationSchemaValue/v2.0.0/model.json). x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/configurations/configurationSchemaValue/v2.0.0/model.json' x-apiture-namespace: configurations type: object properties: {} x-apiture-flattened: true attributeValue: x-apiture-version: 2.0.0 title: Attribute Value (v2.0.0) description: |- The data associated with this attribute. This schema was resolved from [`common/attributeValue`](https://production.api.apiture.com/schemas/common/attributeValue/v2.0.0/model.json). x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/common/attributeValue/v2.0.0/model.json' x-apiture-namespace: common type: object properties: {} x-apiture-flattened: true labelGroup: title: Label Group (v1.0.0) description: >- A map that defines labels for the items in a group. This is a map from each item *name* → *a [`labelItem`](#schema-labelitem) object*. For example, consider a JSON response that includes a property named `revenueEstimate`; the values for `revenueEstimate` must be one of the items in the group named `estimatedAnnualRevenue`, with options ranging `under1Million`, to `over100Million`. The item name is used as the selected value in an Apiture representation, such as `{ ..., "revenueEstimate" : "from10to100Million" , ...}`, and the item with the name `from10to100Million` defines the presentation labels for that item, as well as other metadata about that choice: this is the range `[10000000.00,100000000.00)`. This allows the client to let the user select a value from a list, such as the following derivde from the labels in the example: * Unknown * Under $1M * $1M to $10M * $10M to $100M * $100M or more Note that the `other` item is hidden from the selection list, as that item is marked as `hidden`. For items which define numeric ranges, a client may instead let the customer *directly* enter their estimated annual revenue as a number, such as 4,500,000.00. The client can then match that number to one of ranges in the items and set the `revenueEstimate` to the corresponding item's name: `{ ..., "revenueEstimate" : "from1to10Million", ... }`. This schema was resolved from [`common/labelGroup`](https://production.api.apiture.com/schemas/common/labelGroup/v1.0.0/model.json). x-apiture-key: labelName x-apiture-version: 1.0.0 additionalProperties: $ref: '#/components/schemas/labelItem' example: unknown: label: Unknown code: '0' hidden: true under1Million: label: Under $1M code: '1' range: '[0,1000000.00)' variants: fr: label: Moins de $1M from1to10Million: label: $1M to $10M code: '2' range: '[1000000.00,10000000.00)' variants: fr: label: $1M \u00e0 $10M from10to100Million: label: $10M to $100M code: '3' range: '[10000000.00,100000000.00)' variants: fr: - label $10M \u00e0 $100M over100Million: label: 'Over $100,000,000.00' code: '4' range: '[100000000.00,]' variants: fr: label: Plus de $10M other: label: Other code: 254 x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/common/labelGroup/v1.0.0/model.json' x-apiture-namespace: common type: object properties: {} x-apiture-flattened: true links: title: Links (v1.0.0) x-apiture-version: 1.0.0 description: |- An optional map of links, mapping each link relation to a link object. This model defines the `_links` object of HAL representations. This schema was resolved from [`common/links`](https://production.api.apiture.com/schemas/common/links/v1.0.0/model.json). type: object x-apiture-key: linkRelationName additionalProperties: $ref: '#/components/schemas/link' x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/common/links/v1.0.0/model.json' x-apiture-namespace: common properties: {} x-apiture-flattened: true accountFields: x-apiture-version: 2.6.0 title: Account Fields (v2.6.0) description: |- Fields of an internal account. This schema was resolved from [`accounts/accountFields`](https://production.api.apiture.com/schemas/accounts/accountFields/v2.6.0/model.json). x-apiture-fragment: true x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/accounts/accountFields/v2.6.0/model.json' x-apiture-namespace: accounts x-apiture-composition: - $ref: '#/components/schemas/accountCreationFields' - properties: - _id - state - title - productName - type - subtype - ifxType - accountNumbers - balance - allowsTransfers - openedAt - interest - cd - cycleWithdrawalCount - name - description - institutionName - routingNumber - paymentsEnabled - checkOrderingEnabled properties: name: description: The user-assigned name of this account. type: string maxLength: 128 minLength: 1 description: description: The user-assigned description of this account. type: string maxLength: 4096 minLength: 1 interestPolicy: description: >- How interest credits on the account (if any) are disbursed. This field is `none` for non-interest bearing accounts. If this is `transfer`, the `apiture:interestTargetAccount` link in the account's `_link` references the target account for the disbursements. This field applies if the account is a CD (Certificate of Deposit a.k.a. Time Deposit) account. allOf: - $ref: '#/components/schemas/interestPolicy' _id: description: The unique identifier for this account resource. This is an immutable opaque string. readOnly: true type: string state: description: The state of the internal account. readOnly: true allOf: - $ref: '#/components/schemas/internalAccountState' title: description: The name of the account holder. This is derived from the user resource. type: string maxLength: 512 example: John Smith productName: description: The name of the banking product that this account is an instance of. This is derived from the product resource. type: string maxLength: 128 minLength: 1 readOnly: true type: description: >- The name of the banking product type. This is derived from the _product_ resource. The `subtype` is more specific; `type` is a broad account category. type: string maxLength: 128 minLength: 1 readOnly: true subtype: description: The name of the banking product sub type. This is derived from the _product_ resource. This is more specific than the `type`. type: string maxLength: 128 minLength: 1 readOnly: true ifxType: description: 'A code which identifies the product type. This is one of the [IFX AcctType](https://ifxforum.org) values.' allOf: - $ref: '#/components/schemas/ifxType' accountNumbers: description: Different representations of the account number. allOf: - $ref: '#/components/schemas/accountNumbers' balance: description: The account balance. readOnly: true allOf: - $ref: '#/components/schemas/balance' allowsTransfers: type: boolean description: 'If `true`, the account is open to deposits and credits such as transfers or rollovers.' readOnly: true default: true openedAt: description: 'The date-time the account was opened. This is an [RFC 3339](https://tools.ietf.org/html/rfc3339) UTC time stamp.' type: string format: date-time readOnly: true interest: description: Interest disbursement settings for the account. type: object allOf: - $ref: '#/components/schemas/interest' cd: description: Certificate of Deposit properties for the account. type: object allOf: - $ref: '#/components/schemas/cd' cycleWithdrawalCount: description: >- The number of withdrawals made against this account within the current statement cycle. For some deposit accounts such as savings accounts, this is limited to a maximum defined in the corresponding product's constraints. If exceeded over multiple statement cycles, the financial institution may convert the account to a demand deposit (checking) account. type: integer readOnly: true minimum: 0 example: 2 institutionName: description: 'The name of the financial institution (FI), derived from the FI''s configuration.' type: string minLength: 2 maxLength: 128 readOnly: true example: Canapi Bank routingNumber: description: >- The account routing number which identifies the financial institution (FI). The full routing number is derived from the FI's configuration. type: string minLength: 9 maxLength: 9 readOnly: true example: '021000021' paymentsEnabled: description: >- If true, payments features such as bill pay are enabled and scheduled payments will debit from this account.
The property `paymentsEnabled` was added on version `2.5.0` of the schema.
The property `paymentsEnabled` was added on version `2.5.0` of the schema. type: boolean readOnly: true x-apiture-since: 2.5.0 checkOrderingEnabled: description: >- If `true`, the user requesting this account resource may order checks for this account through the Check Orders API. The account state must be `active` and the associated product must also enable check ordering.
The property `checkOrderingEnabled` was added on version `2.6.0` of the schema.
The property `checkOrderingEnabled` was added on version `2.6.0` of the schema. type: boolean readOnly: true default: false x-apiture-since: 2.6.0 type: object x-apiture-flattened: true labelItem: title: Label Item (v1.0.0) description: >- An item in a [`labelGroup`](#schema-labelgroup), with a set of `variants` which contains different localized labels for the item. Each ([`simpleLabel`](#schema-simpleLabel)) variant defines the presentation text label and optional description for a language. Items may also have a lookup `code` to map to external syststems, a numeric range, and a `hidden` boolean to indicate the item is normally hidden in the UI. This schema was resolved from [`common/labelItem`](https://production.api.apiture.com/schemas/common/labelItem/v1.0.0/model.json). x-apiture-version: 1.0.0 example: over100Million: label: 'Over $100,000,000.00' code: '4' range: '[100000000.00,]' variants: fr: label: Plus de $10M x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/common/labelItem/v1.0.0/model.json' x-apiture-namespace: common x-apiture-composition: - $ref: '#/components/schemas/simpleLabel' - properties: - variants - code - hidden - range properties: label: type: string description: A label or title which may be used as labels or other UI controls which present a value. example: Board of Directors description: type: string description: A more detailed localized description of a localizable label. variants: description: >- The language-specific variants of this label. The keys in this object are [RFC 7231](https://tools.ietf.org/html/rfc7231#section-3.1.3.1) language codes. x-apiture-key: languageCode type: object additionalProperties: $ref: '#/components/schemas/simpleLabel' example: en: label: More then $10M es: label: Mas de $10M fr: label: Plus de $10M code: type: string description: 'If the localized value is associated with an external standard or definition, this is a lookup code or key or URI for that value.' example: '3' minLength: 1 hidden: type: boolean description: 'If `true`, this item is normally hidden from the User Interface.' range: description: >- The range of values, if the item describes a bounded numeric value. This is range notation such as `[min,max]`, `(exclusiveMin,max]`, `[min,exclusiveMax)`, or `(exclusiveMin,exclusiveMax)`. For example, `[0,100)` is the range greater than or equal to 0 and less than 100. If the *min* or *max* value are omitted, that end of the range is unbounded. For example, `(,1000.00)` means less than 1000.00 and `[20000.00,]` means 20000.00 or more. The ranges do not overlap or have gaps. type: string pattern: '^[\[\(](-?(0|[1-9][0-9]*)(\.[0-9]+)?)?,(-?(0|[1-9][0-9]*)(\.[0-9]+)?)?[\]\)]$' type: object x-apiture-flattened: true link: x-apiture-version: 1.0.0 title: Link (v1.0.0) description: >- Describes a hypermedia link within a `_links` object in HAL representations. In Apiture APIs, links are [HAL links](https://developer.apiture.com/docs/concepts/links), but Apiture APIs do not use the `name` or `hreflang` properties of HAL. Apiture links _may_ include a `method` property. This schema was resolved from [`common/link`](https://production.api.apiture.com/schemas/common/link/v1.0.0/model.json). required: - href properties: href: type: string format: uri description: The URI or URI template for the resource/operation this link refers to. type: type: string description: The media type for the resource. templated: type: boolean description: 'If true, the link''s href is a [URI template](https://tools.ietf.org/html/rfc6570).' title: type: string description: An optional human-readable localized title for the link. deprecation: type: string format: uri description: 'If present, the containing link is deprecated and the value is a URI which provides human-readable text information about the deprecation.' profile: type: string format: uri description: 'The URI of a profile document, a JSON document which describes the target resource/operation.' example: href: /contacts/contacts/328f6bf6-d762-422f-a077-ab91ca4d0b6f title: Applicant x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/common/link/v1.0.0/model.json' x-apiture-namespace: common type: object x-apiture-flattened: true simpleLabel: title: Simple Label (v1.0.0) description: |- A text label and optional description. This schema was resolved from [`common/simpleLabel`](https://production.api.apiture.com/schemas/common/simpleLabel/v1.0.0/model.json). x-apiture-version: 1.0.0 type: object required: - label properties: label: type: string description: A label or title which may be used as labels or other UI controls which present a value. example: Board of Directors description: type: string description: A more detailed localized description of a localizable label. x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/common/simpleLabel/v1.0.0/model.json' x-apiture-namespace: common x-apiture-flattened: true accountCreationFields: x-apiture-version: 1.0.0 title: Account Creation Fields (v1.0.0) description: >- Fields used when creating an account. This schema was resolved from [`accounts/accountCreationFields`](https://production.api.apiture.com/schemas/accounts/accountCreationFields/v1.0.0/model.json). x-apiture-fragment: true type: object properties: name: description: The user-assigned name of this account. type: string maxLength: 128 minLength: 1 description: description: The user-assigned description of this account. type: string maxLength: 4096 minLength: 1 interestPolicy: description: >- How interest credits on the account (if any) are disbursed. This field is `none` for non-interest bearing accounts. If this is `transfer`, the `apiture:interestTargetAccount` link in the account's `_link` references the target account for the disbursements. This field applies if the account is a CD (Certificate of Deposit a.k.a. Time Deposit) account. allOf: - $ref: '#/components/schemas/interestPolicy' example: name: My College CD description: Higher interest college savings interestPolicy: capitalize x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/accounts/accountCreationFields/v1.0.0/model.json' x-apiture-namespace: accounts x-apiture-flattened: true internalAccountState: x-apiture-version: 1.0.0 title: Internal Account State (v1.0.0) description: >- The state of the account. This field is immutable and derived. To change the state of an account, `POST` the account ID to the corresponding resource endpoints, using the corresponding link on the account resource: * To activate an account, use the `apiture:activate` link to `POST` to `/accounts/activeAccounts`. * To deactivate an account, use the `apiture:deactivate` link to `POST` to `/accounts/inactiveAccounts`. * To freeze an account, use the `apiture:freeze` link to `POST` to `/accounts/frozenAccounts`. * To close an account, use the `apiture:close` link to `POST` to `/accounts/closedAccounts`. internalAccountState strings may have one of the following [enumerated values](https://developer.apiture.com/concepts/label-groups#enumerations):
ValueDescription
pendingPending: A new account resource has been created but the account or its data has not been verified and the account is not active.
activeActive: The account has been created and is now active and available for transactions as determined by the account's banking product.
inactiveInactive: An account which is marked inactive and not available for new transactions. Users can change their Inactive accounts back to active.
frozenfrozen: An account which is frozen and not eligible for new transactions. This is typically the result of suspicious activity or fraud detection. The user must contact their financial institution to unfreeze the account (by changing the state back to `active`) or the financial institution may opt to close the account.
closedClosed: An account that is closed and removed from use Closed accounts are not eligble for transactions or to become active. Such accounts are retained for historical purposes because some transactions may refer to it. Users do not see closed accounts when they view their accounts.
These enumeration values are further described by the [label group](https://developer.apiture.com/concepts/label-groups) named `internalAccountState` in the response from the [`getLabels`](#op-getLabels) operation. This schema was resolved from [`accounts/internalAccountState`](https://production.api.apiture.com/schemas/accounts/internalAccountState/v1.0.0/model.json). type: string enum: - pending - active - inactive - frozen - closed x-apiture-enum: internalAccountState example: active x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/accounts/internalAccountState/v1.0.0/model.json' x-apiture-namespace: accounts x-apiture-flattened: true ifxType: title: IFX Account Type (v1.0.0) description: >- A code which identifies the product type. This is one of the [IFX AcctType](https://ifxforum.org) values. Labels and descriptions for the enumeration values are in the `ifxType` key in the response of the `getLabels` operation. ifxType strings may have one of the following [enumerated values](https://developer.apiture.com/concepts/label-groups#enumerations):
ValueDescription
CCACredit card account
CDACertificate of deposit account (CD)
CLACommercial loan account
CMACash management account
DDADemand deposit account
EQUHome equity loan
GLAGeneral ledger account
ILAInstallment loan account
INVInvestment account
IRAIndividual retirement account
IRLAccounts held in Ireland
LOCConsumer line of credit
MLAMilitary Lending Account: Credit facility held by former US service member
MMAMoney market account
PBAPackaged bank Account: Account with additional benefits that charges a fixed monthly fee.
PPAPrivate pension administrator
RWDReward accounts
SDASavings deposit account
These enumeration values are further described by the [label group](https://developer.apiture.com/concepts/label-groups) named `ifxType` in the response from the [`getLabels`](#op-getLabels) operation. This schema was resolved from [`products/ifxType`](https://production.api.apiture.com/schemas/products/ifxType/v1.0.0/model.json). x-apiture-enum: ifxType type: string enum: - CCA - CDA - CLA - CMA - DDA - EQU - GLA - ILA - INV - IRA - IRL - LOC - MLA - MMA - PBA - PPA - RWD - SDA x-apiture-version: 1.0.0 x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/products/ifxType/v1.0.0/model.json' x-apiture-namespace: products x-apiture-flattened: true accountNumbers: title: Account Numbers (v1.0.0) description: |- Different representations of an account number. This schema was resolved from [`common/accountNumbers`](https://production.api.apiture.com/schemas/common/accountNumbers/v1.0.0/model.json). properties: masked: description: >- A partial account number that does not contain all the digits of the full account number. This masked number appears in statements or in user experience presentation. It is sufficient for a user to differentiate this account from other accounts they hold, but is not sufficient for initiating transfers, etc. The first character is the mask character and is repeated; this does not indicate that the full account number is the same as the mask length. This value is derived and immutable. type: string minLength: 8 maxLength: 32 readOnly: true example: '*************3210' full: description: >- The full account number. This value only appears when `?unmasked=true` is passed on the `GET` request. Not included in the summary representation of the account that is included in account collection responses. This value is derived and immutable. type: string minLength: 4 maxLength: 17 example: '9876543210' readOnly: true x-apiture-version: 1.0.0 x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/common/accountNumbers/v1.0.0/model.json' x-apiture-namespace: common type: object x-apiture-flattened: true balance: x-apiture-version: 1.0.0 title: Account Balance (v1.0.0) description: >- The balance of the account. This is derived data and not mutable through the API. Balances may be negative, indicating a deficit or loan balance. This schema was resolved from [`accounts/balance`](https://production.api.apiture.com/schemas/accounts/balance/v1.0.0/model.json). properties: current: description: The current balance is the available balance plus all pending credits and minus all pending debits. type: string readOnly: true example: '3450.30' available: description: >- The string representation of the exact decimal available balance. For deposit accounts, this reflects the amount that may be used for withdrawals or transfers. This field does not apply to debit accounts such as loans. type: string readOnly: true example: '2850.30' hold: description: >- The `hold` balance is the total amount of funds held due to holds placed on individual transactions. Transaction holds reduce the available balance until expiration. type: string readOnly: true example: '500.00' reserve: description: A `reserve` balance is the amount placed on hold by the Financial Institution. A reserve balance reduces the available balance. type: string readOnly: true example: '100.00' pendingCredits: description: >- The string representation of the total of all pending credits against this account. This contributes to the current balance but not the available balance. type: string readOnly: true example: '3000.00' pendingDebits: description: >- The string representation of the total of all pending debits against this account. This contributes to the current balance but not the available balance. type: string readOnly: true example: '0.00' currency: description: 'The [ISO 4217 currency code](https://en.wikipedia.org/wiki/ISO_4217) for this balance.' type: string readOnly: true example: current: '3450.30' available: '2850.30' hold: '500.00' reserve: '100.00' currency: USD x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/accounts/balance/v1.0.0/model.json' x-apiture-namespace: accounts type: object x-apiture-flattened: true interest: x-apiture-version: 1.0.0 title: Interest (v1.0.0) description: |- The account's accrued interest. The values are in the `currency` associated with the account. This schema was resolved from [`accounts/interest`](https://production.api.apiture.com/schemas/accounts/interest/v1.0.0/model.json). type: object properties: yearToDate: description: The interest earned to date since the beginning of the year. type: string example: '3.12' readOnly: true sinceOpening: description: The interest earned since the account was opened. type: string example: '34.62' readOnly: true x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/accounts/interest/v1.0.0/model.json' x-apiture-namespace: accounts x-apiture-flattened: true cd: x-apiture-version: 1.4.0 title: Certificate of Deposit (CD) Properties (v1.4.0) description: |- Properties of a Certificate of Deposit (CD, a.k.a. Time Deposit) account. This schema was resolved from [`accounts/cd`](https://production.api.apiture.com/schemas/accounts/cd/v1.4.0/model.json). type: object properties: maturesAt: description: >- The date-time that this account will mature. The account matures on the date which is derived by adding the duration of the `term` to the opening date-time. The date-time is a string in [RFC 3339](https://tools.ietf.org/html/rfc3339) UTF format: `YYYY-MM-DDThh:mm:ss.sssZ`. type: string format: date-time readOnly: true example: '2019-10-30T08:16:00.000Z' apyBumpedAt: description: >- The date-time that the user bumped the rate after the financial institution offered a higher rate. This property only exists if the user elected to bump the APY rate during this account's current term. If the account is rolled over to a new account, this property does not exist (even if the rollover has the same account number). See the [`bumpApyRate`](#op-bumpApyRate) operation. The date-time is a string in [RFC 3339](https://tools.ietf.org/html/rfc3339) UTF format: `YYYY-MM-DDThh:mm:ss.sssZ`. type: string format: date-time readOnly: true example: '2019-10-30T08:16:00.000Z' term: description: |- The maturity term. The account matures on the date which is derived by adding the duration of the `term` to the opening date-time. This value is an [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations) string of the form `P[n]Y[n]M[n]D` to specify the term in the number of years/months/days. For example, the values `P30D`, `P6M`, `P2Y` indicate a term of 30 days, six months, and two years, respectively. type: string format: period readOnly: true example: P6M maturityPolicy: description: What happens to the account upon maturity. allOf: - $ref: '#/components/schemas/maturityPolicy' rolloverProductName: description: >- If this account rolls over into a new product at maturity, this is the name of the banking product for the rollover account. The product is defined in the `apiture:rolloverProduct` in the account's `_links`. type: string readOnly: true transferAccount: description: >- Details of the existing internal or external account where interest and/or balance are transferred at CD maturity, depending on the settings in `maturityPolicy`. This object only exists if the maturity policy specifies transferring. This object and the properties are derived from the account referenced by the `apiture:transferTargetAccount` link that is used in [`createAccount`](#op-createAccount) or [`updateAccount`](#op-updateAccount). readOnly: true allOf: - $ref: '#/components/schemas/cdTransferAccount' inDebitGracePeriod: description: >- If this account is within the debit grace period, then it is eligible to withdraw funds without being assessed a penalty. If `true` the account is in the grace period in which debits are allowed. type: boolean readOnly: true inCreditGracePeriod: description: >- If this account is within the credit grace period, then it is eligible to add funds without being assessed a penalty. If `true` the account is in the grace period in which credits are allowed. type: boolean readOnly: true gracePeriodDebitEndsAt: description: >- If the account is in a debit-eligible grace period, this is the date the grace period ends for debits in [RFC 3339](https://tools.ietf.org/html/rfc3339) date-time format, `YYYY-MM-DDThh:mm:ssZ`. Otherwise, this field is omitted. type: string format: date-time readOnly: true example: '2020-07-30T04:59:59.000Z' gracePeriodCreditEndsAt: description: >- If the account is in a credit-eligible grace period, this is the date the grace period ends for credits in [RFC 3339](https://tools.ietf.org/html/rfc3339) date format, `YYYY-MM-DDThh:mm:ssZ`. Otherwise, this field is omitted. type: string format: date-time readOnly: true example: '2020-07-30T04:59:59.000Z' beneficialOwnersConfirmed: description: >- When updating the maturity settings for a business CD account, a `true` value indicates the user has confirmed the existing beneficial owners on the account. This property exists _only_ in [`patchAccount`](#op-patchAccount) _request_ operations and is not present in responses. Note: The beneficial owners are part of the owning organization for business accounts; see the Organization's API. type: boolean x-apiture-writeOnly: true x-apiture-todo: 'writeOnly: true when convert to OpenAPI 3.0' example: maturesAt: '2019-10-30T08:16:00.000Z' apyBumpedAt: '2019-10-30T08:16:00.000Z' term: P6M maturityPolicy: transferPrincipalAndInterest transferAccount: name: My Premiere Savings title: John Smith institutionName: 3rd Party Bank routingNumber: '021000021' accountNumbers: masked: '*************3210' full: '9876543210' inDebitGracePeriod: true inCreditGracePeriod: true gracePeriodDebitEndsAt: '2020-07-30T04:59:59.000Z' gracePeriodCreditEndsAt: '2020-07-30T04:59:59.000Z' x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/accounts/cd/v1.4.0/model.json' x-apiture-namespace: accounts x-apiture-flattened: true maturityPolicy: title: Maturity Policy (v1.0.0) description: >- Indicates how the principal and interest are processed upon maturity. The values indicate whether to rollover (to a time deposit account of the same rate and term), transfer funds to another (possibly new) deposit account, or simply hold the funds in the current account (which may no longer accrue interest). Labels and descriptions for the enumeration values are in the `maturityPolicy` key in the response of the `getLabels` operation. maturityPolicy strings may have one of the following [enumerated values](https://developer.apiture.com/concepts/label-groups#enumerations):
ValueDescription
rolloverPrincipalAndInterestRollover principal and interest to a new CD of the same product: Upon maturity, both principal and interest rollover into a specified banking product, such as a savings, checking, or other deposit account.
transferPrincipalAndInterestTransfer principal and interest to a deposit account: Upon maturity, the principal an interest are both transferred to an existing or new deposit account.
rolloverPrincipalAndTransferInterestTransfer interest to a new deposit account an rollover principal to a new CD of the same product: Upon maturity, the principal rolls over into a specified banking product and the interest is transferred to an existing deposit account.
holdPrincipalAndInterestHold principal and accued interest in the CD account until withdrawal: Upon maturity, the principal and interest are held in the current time deposit account. The account may or may not accrue further interest, depending on the terms of the time deposit product. Funds may be withdrawn or transferred.
partialTransferPartial Transfer: Upon maturity, any funds greater than the maturity threshold is transfered to an existing deposit account and the rest remains on deposit. The account may or may not accrue further interest, depending on the terms of the time deposit product. Funds may be withdrawn or transferred.
These enumeration values are further described by the [label group](https://developer.apiture.com/concepts/label-groups) named `maturityPolicy` in the response from the [`getLabels`](#op-getLabels) operation. This schema was resolved from [`products/maturityPolicy`](https://production.api.apiture.com/schemas/products/maturityPolicy/v1.0.0/model.json). type: string enum: - rolloverPrincipalAndInterest - transferPrincipalAndInterest - rolloverPrincipalAndTransferInterest - holdPrincipalAndInterest - partialTransfer x-apiture-enum: maturityPolicy x-apiture-version: 1.0.0 x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/products/maturityPolicy/v1.0.0/model.json' x-apiture-namespace: products x-apiture-flattened: true cdTransferAccount: title: CD Transfer Account (v1.0.0) description: >- Properties of the target account for transferring funds from a maturing CD account. This schema was resolved from [`accounts/cdTransferAccount`](https://production.api.apiture.com/schemas/accounts/cdTransferAccount/v1.0.0/model.json). example: name: My Premiere Savings title: John Smith routingNumber: '021000021' accountNumbers: masked: '*************3210' institutionName: 3rd Party Bank x-apiture-version: 1.0.0 x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/accounts/cdTransferAccount/v1.0.0/model.json' x-apiture-namespace: accounts x-apiture-composition: - $ref: '#/components/schemas/accountIdentification' properties: name: description: The account name. type: string title: description: 'The title of the account. Traditionally, this is the name of the account holder.' maxLength: 512 type: string example: John Smith institutionName: description: The name of the financial institution which manages the account. type: string minLength: 2 maxLength: 128 example: 3rd Party Bank readOnly: true routingNumber: description: >- The account routing number which identifies the financial institution. The full routing number and full account number are required to fully identify the account. type: string minLength: 9 maxLength: 9 example: '021000021' readOnly: true accountNumbers: description: The masked and full account numbers for this account. The `full` value only appears when `?unmasked=true` is passed on the `GET` request. type: object allOf: - $ref: '#/components/schemas/accountNumbers' readOnly: true example: masked: '*************3210' full: '9876543210' type: object x-apiture-flattened: true interestPolicy: title: Account Interest Policy (v1.0.0) description: >- How interest credits on the account (if any) are disbursed. interestPolicy strings may have one of the following [enumerated values](https://developer.apiture.com/concepts/label-groups#enumerations):
ValueDescription
noneNone: This account does not earn interest.
capitalizeCapitalize: When interest is posted, it is deposited back into the account.
transferTransfer: When interest is posted, it is transferred to another account.
These enumeration values are further described by the [label group](https://developer.apiture.com/concepts/label-groups) named `interestPolicy` in the response from the [`getLabels`](#op-getLabels) operation. This schema was resolved from [`accounts/interestPolicy`](https://production.api.apiture.com/schemas/accounts/interestPolicy/v1.0.0/model.json). x-apiture-enum: interestPolicy type: string enum: - none - capitalize - transfer x-apiture-version: 1.0.0 x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/accounts/interestPolicy/v1.0.0/model.json' x-apiture-namespace: accounts x-apiture-flattened: true accountIdentification: title: Account Identification (v1.0.0) description: >- Properties which identify a specific account. This schema was resolved from [`accounts/accountIdentification`](https://production.api.apiture.com/schemas/accounts/accountIdentification/v1.0.0/model.json). type: object properties: name: description: The account name. type: string title: description: 'The title of the account. Traditionally, this is the name of the account holder.' maxLength: 512 type: string example: John Smith institutionName: description: The name of the financial institution which manages the account. type: string minLength: 2 maxLength: 128 example: 3rd Party Bank readOnly: true routingNumber: description: >- The account routing number which identifies the financial institution. The full routing number and full account number are required to fully identify the account. type: string minLength: 9 maxLength: 9 example: '021000021' readOnly: true accountNumbers: description: The masked and full account numbers for this account. The `full` value only appears when `?unmasked=true` is passed on the `GET` request. type: object allOf: - $ref: '#/components/schemas/accountNumbers' readOnly: true example: masked: '*************3210' full: '9876543210' example: name: My Premiere Savings title: John Smith routingNumber: '021000021' accountNumbers: masked: '*************3210' institutionName: 3rd Party Bank x-apiture-version: 1.0.0 x-apiture-resolved-from: 'https://production.api.apiture.com/schemas/accounts/accountIdentification/v1.0.0/model.json' x-apiture-namespace: accounts x-apiture-flattened: true responses: '304': description: Not Modified. The resource has not been modified since it was last fetched. '400': description: >- Bad Request. The request body or one or more of the query parameters was not well formed. The `_error` field in the response contains details about the request error. This error response may have one of the following `type` values: * [`emptyRequestBody`](#err-emptyRequestBody) x-apiture-errors: - emptyRequestBody content: application/hal+json: schema: $ref: '#/components/schemas/errorResponse' application/json: schema: $ref: '#/components/schemas/errorResponse' '412': description: >- Precondition Failed. The supplied `if-Match` header value does not match the most recent `ETag` response header value. The resource has changed in the interim. content: application/hal+json: schema: $ref: '#/components/schemas/errorResponse' application/json: schema: $ref: '#/components/schemas/errorResponse' '422': description: >- Unprocessable Entity. One or more of the query parameters was well formed but otherwise invalid. The `_error` field in the response contains details about the request error. content: application/hal+json: schema: $ref: '#/components/schemas/errorResponse' application/json: schema: $ref: '#/components/schemas/errorResponse' 204Deleted: description: No Content. The resource was deleted successfully. 404Deposit: description: >- Not Found. There is no such deposit resource at the specified `{depositId}` The `_error` field in the response contains details about the request error. This error response may have one of the following `type` values: * [`invalidDepositId`](#err-invalidDepositId) x-apiture-errors: - invalidDepositId content: application/hal+json: schema: $ref: '#/components/schemas/errorResponse' application/json: schema: $ref: '#/components/schemas/errorResponse' 404Check: description: >- Not Found. There is no such check resource at the specified `{checkId}` The `_error` field in the response contains details about the request error. This error response may have one of the following `type` values: * [`invalidCheckId`](#err-invalidCheckId) x-apiture-errors: - invalidCheckId content: application/hal+json: schema: $ref: '#/components/schemas/errorResponse' application/json: schema: $ref: '#/components/schemas/errorResponse' 404CheckImage: description: |- Not Found. There is no check image found. The `_error` field in the response contains details about the request error. This error response may have one of the following `type` values: * [`invalidCheckId`](#err-invalidCheckId) * [`checkImageNotFound`](#err-checkImageNotFound) x-apiture-errors: - invalidCheckId - checkImageNotFound content: application/hal+json: schema: $ref: '#/components/schemas/errorResponse' application/json: schema: $ref: '#/components/schemas/errorResponse' 404ConfigurationGroup: description: >- Not Found. There is no such configuration group resource at the specified `{groupName}` The `_error` field in the response contains details about the request error. This error response may have one of the following `type` values: * [`invalidGroupName`](#err-invalidGroupName) x-apiture-errors: - invalidGroupName content: application/hal+json: schema: $ref: '#/components/schemas/errorResponse' application/json: schema: $ref: '#/components/schemas/errorResponse' 404ConfigurationGroupOrValue: description: >- Not Found. There is either no such configuration group resource at the specified `{groupName}` or no such value at the specified `{valueName}`. The `_error` field in the response contains details about the request error. This error response may have one of the following `type` values: * [`invalidValueName`](#err-invalidValueName) x-apiture-errors: - invalidValueName content: application/hal+json: schema: $ref: '#/components/schemas/errorResponse' application/json: schema: $ref: '#/components/schemas/errorResponse' 409CreateCheckDepositConflict: description: |- Conflict. The request to create the check deposit is not allowed. The `_error` field in the response contains details about the request error. This error response may have one of the following `type` values: * [`inProgressCheckDeposit`](#err-inProgressCheckDeposit) x-apiture-errors: - inProgressCheckDeposit content: application/hal+json: schema: $ref: '#/components/schemas/errorResponse' application/json: schema: $ref: '#/components/schemas/errorResponse' 409SubmitCheckDepositConflict: description: |- Conflict. The request to submit the check deposit is not allowed. The `_error` field in the response contains details about the request error. This error response may have one of the following `type` values: * [`invalidCheckDepositState`](#err-invalidCheckDepositState) * [`invalidChecks`](#err-invalidChecks) x-apiture-errors: - invalidCheckDepositState - invalidChecks content: application/hal+json: schema: $ref: '#/components/schemas/errorResponse' application/json: schema: $ref: '#/components/schemas/errorResponse' 409CheckDepositStateConflict: description: |- Conflict. The requested check deposit operation is not allowed. The `_error` field in the response contains details about the request error. This error response may have one of the following `type` values: * [`invalidCheckDepositState`](#err-invalidCheckDepositState) x-apiture-errors: - invalidCheckDepositState content: application/hal+json: schema: $ref: '#/components/schemas/errorResponse' application/json: schema: $ref: '#/components/schemas/errorResponse' 409CheckStateConflict: description: |- Conflict. The requested check operation is not allowed. The `_error` field in the response contains details about the request error. This error response may have one of the following `type` values: * [`invalidCheckState`](#err-invalidCheckState) x-apiture-errors: - invalidCheckState content: application/hal+json: schema: $ref: '#/components/schemas/errorResponse' application/json: schema: $ref: '#/components/schemas/errorResponse' parameters: accountQueryParam: name: account description: >- Return check deposit limits for the named account. This is the `_id` of the account resource. If omitted, the response contains only user limits. in: query schema: type: string depositIdPathParam: name: depositId description: The unique identifier of this deposit. This is an opaque string. in: path required: true schema: type: string checkIdPathParam: name: checkId description: The unique identifier of this check. This is an opaque string. in: path required: true schema: type: string checkSidePathParam: name: side description: |- The side of the check. Valid check `side` values: * `front` * `back` in: path required: true schema: type: string filterQueryParam: name: filter in: query description: 'Optional filter criteria. See [filtering](https://developer.apiture.com/docs/concepts/filtering).' schema: type: string qQueryParam: name: q in: query description: 'Optional search string. See [searching](https://developer.apiture.com/docs/concepts/searching).' schema: type: string stateQueryParam: name: state in: query description: >- Subset of the check deposit collection to those whose `state` matches this value. Use `|` to separate multiple values. For example, `?state=pending` matches only items whose `state` is `pending`; `?state=pending|submitted` matches items whose `state` is `pending` or `submitted`. This is combined with an implicit `and` with other filters if they are used. See [filtering](https://developer.apiture.com/docs/concepts/filtering). schema: type: string enum: - pending - submitted - accepted - rejected - acceptedWithRejections depositIdQueryParam: name: depositId in: query description: The unique identifier of this deposit. This is an opaque string. schema: type: string continueSessionParam: name: continueSession in: query description: 'If `true`, the service will attempt to reuse the user''s check deposit provider session.' schema: type: boolean default: false ifMatchHeaderParam: name: If-Match description: The entity tag that was returned in the `ETag` response. This must match the current entity tag of the resource. in: header schema: type: string ifNoneMatchHeaderParam: name: If-None-Match description: >- The entity tag that was returned in the `ETag` response. If the resource's current entity tag matches, the `GET` returns 304 (Not Modified) and no response body, else the resource representation is returned. in: header schema: type: string configurationGroupNamePathParam: name: groupName description: The unique name of this configuration group. in: path required: true schema: type: string configurationGroupValueNamePathParam: name: valueName description: >- The unique name of a value in a configuration group. This is the name of the value in the `schema`. A `{valueName}` must be a simple identifier following the pattern _`letter [letter | digit | '-' | '_']*`_ in: path required: true schema: type: string securitySchemes: apiKey: type: apiKey name: API-Key in: header description: >- API Key based authentication. Each thing must pass its private, unique API key, allocated in the developer portal, via the `API-Key: {api-key}` request header. accessToken: type: oauth2 description: >- OAuth2 client access token authentication. The client authenticates against the server at `authorizationUrl`, passing the client's private `clientId` (and optional `clientSecret`) as part of this flow. The client obtains an access token from the server at `tokenUrl`. It then passes the received access token via the `Authorization: Bearer {access-token}` header in subsequent API calls. The authorization process also returns a refresh token which the client should use to renew the access token before it expires. flows: authorizationCode: authorizationUrl: 'https://auth.devbank.apiture.com/auth/oauth2/authorize' tokenUrl: 'https://api.devbank.apiture.com/auth/oauth2/token' scopes: banking/read: Read access to things banking/write: Write (update) access to things banking/delete: Delete access to things banking/full: Full access to things