{
    "swagger": "2.0",
    "info": {
        "description": "Provides methods for interacting with data on the core banking system and third party vendors.",
        "version": "1.1.1",
        "title": "Account Information (US)",
        "x-finastra-category": "Consumer Banking",
        "x-finastra-subcategory": "Account Information",
        "x-finastra-short-description": "Retrieve a list of accounts and transactions, obtain account and transaction images (e.g. Check Images or Deposit Images) for the authenticated user",
        "x-finastra-tags": ["Account", "Malauzai", "North America"],
        "x-finastra-channel-type": "DIGITAL",
        "x-finastra-maturity-level": "GA",
        "x-finastra-audience": "PUBLIC",
        "x-finastra-implementability": "INTERNAL",
        "x-finastra-icon": "Icons_11h.svg",
        "x-finastra-pricing": "SILVER",
        "x-finastra-data-classification": ["Restricted"],
        "x-finastra-commitId": "96ae703f5805c11d69bb047e59570fc79683a25f",
        "contact": {
            "name": "API Support",
            "url": "https://community.fusionfabric.cloud/index.html"
        }
    },
    "host": "api.fusionfabric.cloud",
    "basePath": "/retail-us/me/account/v1",
    "schemes": ["https"],
    "consumes": [
        "application/json",
        "application/octet-stream",
        "application/x-www-form-urlencoded",
        "multipart/form-data"
    ],
    "produces": ["application/json"],
    "securityDefinitions": {
        "Oauth2": {
            "type": "oauth2",
            "description": "Oauth 2.0 authentication",
            "authorizationUrl": "https://api.fusionfabric.cloud/login/v1/sandbox/oidc/authorize",
            "tokenUrl": "https://api.fusionfabric.cloud/login/v1/sandbox/oidc/token",
            "flow": "accessCode",
            "scopes": {}
        }
    },
    "security": [
        {
            "Oauth2": []
        }
    ],
    "paths": {
        "/account-order": {
            "get": {
                "tags": ["Consumer Profile"],
                "summary": "Retrieve the Personalized Account Order",
                "operationId": "accountOrder",
                "description": "This call retrieves the personalized account order for the account holder currently logged in.",
                "parameters": [
                    {
                        "$ref": "#/parameters/X-Request-ID"
                    },
                    {
                        "$ref": "#/parameters/X-IP-Address"
                    },
                    {
                        "$ref": "#/parameters/X-User-Agent"
                    },
                    {
                        "$ref": "#/parameters/X-Device-Type"
                    },
                    {
                        "$ref": "#/parameters/X-Device-ID"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of accounts IDs in personalized order",
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        }
                    },
                    "400": {
                        "$ref": "#/responses/BadRequest"
                    },
                    "401": {
                        "$ref": "#/responses/Unauthorized"
                    },
                    "404": {
                        "$ref": "#/responses/NotFound"
                    },
                    "500": {
                        "$ref": "#/responses/InternalServerError"
                    }
                },
                "x-finastra-data-classification": ["Restricted"]
            },
            "put": {
                "tags": ["Consumer Profile"],
                "summary": "Update Personalized Account Order",
                "operationId": "setAccountOrder",
                "description": "This call updates the personalized account order for the account holder currently logged in.",
                "parameters": [
                    {
                        "$ref": "#/parameters/X-Request-ID"
                    },
                    {
                        "$ref": "#/parameters/X-IP-Address"
                    },
                    {
                        "$ref": "#/parameters/X-User-Agent"
                    },
                    {
                        "$ref": "#/parameters/X-Device-Type"
                    },
                    {
                        "$ref": "#/parameters/X-Device-ID"
                    },
                    {
                        "$ref": "#/parameters/accountOrder"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "schema": {
                            "$ref": "#/definitions/GeneralResponse"
                        }
                    },
                    "400": {
                        "$ref": "#/responses/BadRequest"
                    },
                    "401": {
                        "$ref": "#/responses/Unauthorized"
                    },
                    "404": {
                        "$ref": "#/responses/NotFound"
                    },
                    "500": {
                        "$ref": "#/responses/InternalServerError"
                    }
                },
                "x-finastra-data-classification": ["Restricted"]
            }
        },
        "/accounts": {
            "get": {
                "tags": ["Accounts"],
                "summary": "Retrieve a Summary of Accounts for an Account Holder",
                "operationId": "accounts",
                "description": "This call returns a summary of all accounts owned by an account holder.",
                "produces": ["application/json"],
                "parameters": [
                    {
                        "$ref": "#/parameters/X-Request-ID"
                    },
                    {
                        "$ref": "#/parameters/X-IP-Address"
                    },
                    {
                        "$ref": "#/parameters/X-User-Agent"
                    },
                    {
                        "$ref": "#/parameters/X-Device-Type"
                    },
                    {
                        "$ref": "#/parameters/X-Device-ID"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "list of accounts for entity",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/Account"
                            }
                        }
                    },
                    "400": {
                        "$ref": "#/responses/BadRequest"
                    },
                    "401": {
                        "$ref": "#/responses/Unauthorized"
                    },
                    "404": {
                        "$ref": "#/responses/NotFound"
                    },
                    "500": {
                        "$ref": "#/responses/InternalServerError"
                    }
                },
                "x-finastra-data-classification": ["Restricted"]
            }
        },
        "/accounts/extended": {
            "get": {
                "tags": ["Accounts"],
                "summary": "Retrieve Extended Account Information",
                "operationId": "extendedAccounts",
                "description": "This call returns extended account information for all accounts owned by the account holder.",
                "produces": ["application/json"],
                "parameters": [
                    {
                        "$ref": "#/parameters/X-Request-ID"
                    },
                    {
                        "$ref": "#/parameters/X-IP-Address"
                    },
                    {
                        "$ref": "#/parameters/X-User-Agent"
                    },
                    {
                        "$ref": "#/parameters/X-Device-Type"
                    },
                    {
                        "$ref": "#/parameters/X-Device-ID"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "list of accounts for entity",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/ExtendedAccount"
                            }
                        }
                    },
                    "400": {
                        "$ref": "#/responses/BadRequest"
                    },
                    "401": {
                        "$ref": "#/responses/Unauthorized"
                    },
                    "404": {
                        "$ref": "#/responses/NotFound"
                    },
                    "500": {
                        "$ref": "#/responses/InternalServerError"
                    }
                },
                "x-finastra-data-classification": ["Restricted"]
            }
        },
        "/accounts/extendedWithDetails": {
            "get": {
                "tags": ["Accounts"],
                "summary": "Retrieve All Account Extended and Detailed Information",
                "operationId": "extendedAccountsWithDetails",
                "description": "This call returns extended and detailed account information for all accounts.",
                "produces": ["application/json"],
                "parameters": [
                    {
                        "$ref": "#/parameters/X-Request-ID"
                    },
                    {
                        "$ref": "#/parameters/X-IP-Address"
                    },
                    {
                        "$ref": "#/parameters/X-User-Agent"
                    },
                    {
                        "$ref": "#/parameters/X-Device-Type"
                    },
                    {
                        "$ref": "#/parameters/X-Device-ID"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "list of accounts for entity",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/ExtendedAccountWithDetails"
                            }
                        }
                    },
                    "400": {
                        "$ref": "#/responses/BadRequest"
                    },
                    "401": {
                        "$ref": "#/responses/Unauthorized"
                    },
                    "404": {
                        "$ref": "#/responses/NotFound"
                    },
                    "500": {
                        "$ref": "#/responses/InternalServerError"
                    }
                },
                "x-finastra-data-classification": ["Restricted"]
            }
        },
        "/accounts/{accountId}": {
            "get": {
                "tags": ["Accounts"],
                "summary": "Retrieve Extended and Detailed Information for an Account",
                "operationId": "extendedAccountDetail",
                "description": "This call returns extended and detailed information for a specific account.\n",
                "produces": ["application/json"],
                "parameters": [
                    {
                        "$ref": "#/parameters/X-Request-ID"
                    },
                    {
                        "$ref": "#/parameters/X-IP-Address"
                    },
                    {
                        "$ref": "#/parameters/X-User-Agent"
                    },
                    {
                        "$ref": "#/parameters/X-Device-Type"
                    },
                    {
                        "$ref": "#/parameters/X-Device-ID"
                    },
                    {
                        "name": "accountId",
                        "in": "path",
                        "description": "Passes a unique ID that identifies an account.",
                        "required": true,
                        "type": "string",
                        "x-finastra-data-classification": ["Restricted"]
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Account details for specified account",
                        "schema": {
                            "$ref": "#/definitions/ExtendedAccountWithDetails"
                        }
                    },
                    "400": {
                        "$ref": "#/responses/BadRequest"
                    },
                    "401": {
                        "$ref": "#/responses/Unauthorized"
                    },
                    "404": {
                        "$ref": "#/responses/NotFound"
                    },
                    "500": {
                        "$ref": "#/responses/InternalServerError"
                    }
                },
                "x-finastra-data-classification": ["Restricted"]
            }
        },
        "/accounts/{accountId}/details": {
            "get": {
                "tags": ["Accounts"],
                "summary": "Retrieve Account Detail for an Account",
                "operationId": "accountDetail",
                "description": "This call returns account details for the specified account ID.\n",
                "produces": ["application/json"],
                "parameters": [
                    {
                        "$ref": "#/parameters/X-Request-ID"
                    },
                    {
                        "$ref": "#/parameters/X-IP-Address"
                    },
                    {
                        "$ref": "#/parameters/X-User-Agent"
                    },
                    {
                        "$ref": "#/parameters/X-Device-Type"
                    },
                    {
                        "$ref": "#/parameters/X-Device-ID"
                    },
                    {
                        "name": "accountId",
                        "in": "path",
                        "description": "Passes a unique ID that identifies an account.",
                        "required": true,
                        "type": "string",
                        "x-finastra-data-classification": ["Restricted"]
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Account details for specified account",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/Detail"
                            }
                        }
                    },
                    "400": {
                        "$ref": "#/responses/BadRequest"
                    },
                    "401": {
                        "$ref": "#/responses/Unauthorized"
                    },
                    "404": {
                        "$ref": "#/responses/NotFound"
                    },
                    "500": {
                        "$ref": "#/responses/InternalServerError"
                    }
                },
                "x-finastra-data-classification": ["Restricted"]
            }
        },
        "/accounts/{accountId}/balances": {
            "get": {
                "tags": ["Accounts"],
                "summary": "Retrieve an Account Balance",
                "operationId": "accountBalances",
                "description": "This call returns the account balance of the specified account ID.\n",
                "produces": ["application/json"],
                "parameters": [
                    {
                        "$ref": "#/parameters/X-Request-ID"
                    },
                    {
                        "$ref": "#/parameters/X-IP-Address"
                    },
                    {
                        "$ref": "#/parameters/X-User-Agent"
                    },
                    {
                        "$ref": "#/parameters/X-Device-Type"
                    },
                    {
                        "$ref": "#/parameters/X-Device-ID"
                    },
                    {
                        "name": "accountId",
                        "in": "path",
                        "description": "Passes a unique ID that identifies an account.",
                        "required": true,
                        "type": "string",
                        "x-finastra-data-classification": ["Restricted"]
                    }
                ],
                "responses": {
                    "200": {
                        "description": "search results matching criteria",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/AccountBalance"
                            }
                        }
                    },
                    "400": {
                        "$ref": "#/responses/BadRequest"
                    },
                    "401": {
                        "$ref": "#/responses/Unauthorized"
                    },
                    "404": {
                        "$ref": "#/responses/NotFound"
                    },
                    "500": {
                        "$ref": "#/responses/InternalServerError"
                    }
                },
                "x-finastra-data-classification": ["Restricted"]
            }
        },
        "/accounts/{accountId}/transactions": {
            "get": {
                "tags": ["Account Transactions"],
                "summary": "Search for Account Holder's Transactions",
                "operationId": "transactions",
                "description": "This call searches for an account and returns all of the transactions based on the selected filter options.\n",
                "produces": ["application/json"],
                "parameters": [
                    {
                        "$ref": "#/parameters/X-Request-ID"
                    },
                    {
                        "$ref": "#/parameters/X-IP-Address"
                    },
                    {
                        "$ref": "#/parameters/X-User-Agent"
                    },
                    {
                        "$ref": "#/parameters/X-Device-Type"
                    },
                    {
                        "$ref": "#/parameters/X-Device-ID"
                    },
                    {
                        "name": "accountId",
                        "in": "path",
                        "description": "Passes a unique ID that identifies an account.",
                        "required": true,
                        "type": "string",
                        "x-finastra-data-classification": ["Restricted"]
                    },
                    {
                        "in": "query",
                        "name": "startDate",
                        "description": "Filters results to return transfers that occured on or after this date (YYYY-MM-DD)",
                        "type": "string"
                    },
                    {
                        "in": "query",
                        "name": "endDate",
                        "description": "Filters results to return transfers that occured on or before this date (YYYY-MM-DD)",
                        "type": "string"
                    },
                    {
                        "in": "query",
                        "name": "offset",
                        "description": "Defines the number of records to skip before returning the first record.",
                        "type": "integer",
                        "format": "int32",
                        "default": 0
                    },
                    {
                        "in": "query",
                        "name": "limit",
                        "description": "Limits the maximum number of records to return.",
                        "type": "integer",
                        "format": "int32",
                        "default": 100
                    }
                ],
                "responses": {
                    "200": {
                        "description": "transactions matching criteria",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/Transaction"
                            }
                        }
                    },
                    "400": {
                        "$ref": "#/responses/BadRequest"
                    },
                    "401": {
                        "$ref": "#/responses/Unauthorized"
                    },
                    "404": {
                        "$ref": "#/responses/NotFound"
                    },
                    "500": {
                        "$ref": "#/responses/InternalServerError"
                    }
                },
                "x-finastra-data-classification": ["Restricted"]
            }
        },
        "/accounts/{accountId}/transactions/{transactionId}": {
            "get": {
                "tags": ["Account Transactions"],
                "summary": "Retrieve Transaction Details",
                "operationId": "transactionDetail",
                "description": "This call returns details for a specific transaction.\n",
                "produces": ["application/json"],
                "parameters": [
                    {
                        "$ref": "#/parameters/X-Request-ID"
                    },
                    {
                        "$ref": "#/parameters/X-IP-Address"
                    },
                    {
                        "$ref": "#/parameters/X-User-Agent"
                    },
                    {
                        "$ref": "#/parameters/X-Device-Type"
                    },
                    {
                        "$ref": "#/parameters/X-Device-ID"
                    },
                    {
                        "name": "accountId",
                        "in": "path",
                        "description": "Passes a unique ID that identifies an account.",
                        "required": true,
                        "type": "string",
                        "x-finastra-data-classification": ["Restricted"]
                    },
                    {
                        "name": "transactionId",
                        "in": "path",
                        "description": "Passes a unique ID that identifies a transaction.",
                        "required": true,
                        "type": "string"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success - Transaction Details Returned",
                        "schema": {
                            "type": "object",
                            "properties": {
                                "details": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/definitions/Detail"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "$ref": "#/responses/BadRequest"
                    },
                    "401": {
                        "$ref": "#/responses/Unauthorized"
                    },
                    "404": {
                        "$ref": "#/responses/NotFound"
                    },
                    "500": {
                        "$ref": "#/responses/InternalServerError"
                    }
                },
                "x-finastra-data-classification": ["Restricted"]
            },
            "patch": {
                "tags": ["Account Transactions"],
                "summary": "Update an Existing Transaction",
                "operationId": "updateTransaction",
                "description": "This call updates the transaction.",
                "produces": ["application/json"],
                "parameters": [
                    {
                        "$ref": "#/parameters/X-Request-ID"
                    },
                    {
                        "$ref": "#/parameters/X-IP-Address"
                    },
                    {
                        "$ref": "#/parameters/X-User-Agent"
                    },
                    {
                        "$ref": "#/parameters/X-Device-Type"
                    },
                    {
                        "$ref": "#/parameters/X-Device-ID"
                    },
                    {
                        "name": "accountId",
                        "in": "path",
                        "description": "Passes a unique ID that identifies an account.",
                        "required": true,
                        "type": "string",
                        "x-finastra-data-classification": ["Restricted"]
                    },
                    {
                        "name": "transactionId",
                        "in": "path",
                        "description": "Passes a unique ID that identifies a transaction.",
                        "required": true,
                        "type": "string"
                    },
                    {
                        "in": "body",
                        "name": "body",
                        "description": "Passes data to update a transaction.",
                        "schema": {
                            "$ref": "#/definitions/TransactionUpdate"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success - Transaction Updated",
                        "schema": {
                            "$ref": "#/definitions/GeneralResponse"
                        }
                    },
                    "400": {
                        "$ref": "#/responses/BadRequest"
                    },
                    "401": {
                        "$ref": "#/responses/Unauthorized"
                    },
                    "404": {
                        "$ref": "#/responses/NotFound"
                    },
                    "500": {
                        "$ref": "#/responses/InternalServerError"
                    }
                },
                "x-finastra-data-classification": ["Restricted"]
            }
        },
        "/accounts/{accountId}/transactions/{transactionId}/transactionImage": {
            "get": {
                "tags": ["Account Transactions"],
                "summary": "Retrieve Saved Image for a Transaction",
                "operationId": "transactionImage",
                "description": "This call returns the image attached to the transaction by the consumer for a specific transaction.",
                "produces": ["application/json"],
                "parameters": [
                    {
                        "$ref": "#/parameters/X-Request-ID"
                    },
                    {
                        "$ref": "#/parameters/X-IP-Address"
                    },
                    {
                        "$ref": "#/parameters/X-User-Agent"
                    },
                    {
                        "$ref": "#/parameters/X-Device-Type"
                    },
                    {
                        "$ref": "#/parameters/X-Device-ID"
                    },
                    {
                        "name": "accountId",
                        "in": "path",
                        "description": "Passes a unique ID that identifies an account.",
                        "required": true,
                        "type": "string",
                        "x-finastra-data-classification": ["Restricted"]
                    },
                    {
                        "name": "transactionId",
                        "in": "path",
                        "description": "Passes a unique ID that identifies a transaction.",
                        "required": true,
                        "type": "string"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success - Image Returned",
                        "schema": {
                            "type": "object",
                            "properties": {
                                "imageName": {
                                    "description": "Returns the file name of a saved image.",
                                    "type": "string"
                                },
                                "imageData": {
                                    "description": "Returns base64-encoded data for an image.",
                                    "type": "string",
                                    "format": "byte"
                                }
                            }
                        }
                    },
                    "400": {
                        "$ref": "#/responses/BadRequest"
                    },
                    "401": {
                        "$ref": "#/responses/Unauthorized"
                    },
                    "404": {
                        "$ref": "#/responses/NotFound"
                    },
                    "500": {
                        "$ref": "#/responses/InternalServerError"
                    }
                },
                "x-finastra-data-classification": ["Restricted"]
            }
        },
        "/accounts/{accountId}/transactions/{transactionId}/checkImage": {
            "get": {
                "tags": ["Account Transactions"],
                "summary": "Retrieve Check Image for a Transaction",
                "operationId": "checkImage",
                "description": "This call retrieves a check image for the selected transaction.",
                "produces": ["application/json"],
                "parameters": [
                    {
                        "$ref": "#/parameters/X-Request-ID"
                    },
                    {
                        "$ref": "#/parameters/X-IP-Address"
                    },
                    {
                        "$ref": "#/parameters/X-User-Agent"
                    },
                    {
                        "$ref": "#/parameters/X-Device-Type"
                    },
                    {
                        "$ref": "#/parameters/X-Device-ID"
                    },
                    {
                        "name": "accountId",
                        "in": "path",
                        "description": "Passes a unique ID that identifies an account.",
                        "required": true,
                        "type": "string",
                        "x-finastra-data-classification": ["Restricted"]
                    },
                    {
                        "name": "transactionId",
                        "in": "path",
                        "description": "Passes a unique ID that identifies a transaction.",
                        "required": true,
                        "type": "string"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success - Image Returned",
                        "schema": {
                            "type": "object",
                            "properties": {
                                "front": {
                                    "description": "Returns the base64-encoded image of the front of a check.",
                                    "type": "string",
                                    "format": "byte"
                                },
                                "back": {
                                    "description": "Returns the base64-encoded image of the back of a check.",
                                    "type": "string",
                                    "format": "byte"
                                }
                            },
                            "x-finastra-data-classification": ["Restricted"]
                        }
                    },
                    "400": {
                        "$ref": "#/responses/BadRequest"
                    },
                    "401": {
                        "$ref": "#/responses/Unauthorized"
                    },
                    "404": {
                        "$ref": "#/responses/NotFound"
                    },
                    "500": {
                        "$ref": "#/responses/InternalServerError"
                    }
                },
                "x-finastra-data-classification": ["Restricted"]
            }
        },
        "/accounts/{accountId}/personalization": {
            "get": {
                "tags": ["Account Personalization"],
                "summary": "Retrieve Personalized Account Options",
                "operationId": "accountPreferences",
                "description": "This call returns the personalized options that have been set for an account.",
                "parameters": [
                    {
                        "$ref": "#/parameters/X-Request-ID"
                    },
                    {
                        "$ref": "#/parameters/X-IP-Address"
                    },
                    {
                        "$ref": "#/parameters/X-User-Agent"
                    },
                    {
                        "$ref": "#/parameters/X-Device-Type"
                    },
                    {
                        "$ref": "#/parameters/X-Device-ID"
                    },
                    {
                        "name": "accountId",
                        "in": "path",
                        "description": "Passes a unique ID that identifies an account.",
                        "required": true,
                        "type": "string",
                        "x-finastra-data-classification": ["Restricted"]
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success - Options Returned",
                        "schema": {
                            "$ref": "#/definitions/AccountPersonalization"
                        }
                    },
                    "400": {
                        "$ref": "#/responses/BadRequest"
                    },
                    "401": {
                        "$ref": "#/responses/Unauthorized"
                    },
                    "404": {
                        "$ref": "#/responses/NotFound"
                    },
                    "500": {
                        "$ref": "#/responses/InternalServerError"
                    }
                },
                "x-finastra-data-classification": ["Restricted"]
            },
            "post": {
                "tags": ["Account Personalization"],
                "summary": "Update Personalized Account Options",
                "operationId": "setAccountPreferences",
                "description": "This call modifies the personalization settings for an account.",
                "parameters": [
                    {
                        "$ref": "#/parameters/X-Request-ID"
                    },
                    {
                        "$ref": "#/parameters/X-IP-Address"
                    },
                    {
                        "$ref": "#/parameters/X-User-Agent"
                    },
                    {
                        "$ref": "#/parameters/X-Device-Type"
                    },
                    {
                        "$ref": "#/parameters/X-Device-ID"
                    },
                    {
                        "name": "accountId",
                        "in": "path",
                        "description": "Passes a unique ID that identifies an account.",
                        "required": true,
                        "type": "string",
                        "x-finastra-data-classification": ["Restricted"]
                    },
                    {
                        "name": "settings",
                        "in": "body",
                        "description": "Passes the options to be updated.",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/AccountPersonalization"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success - Options Updated",
                        "schema": {
                            "$ref": "#/definitions/GeneralResponse"
                        }
                    },
                    "400": {
                        "$ref": "#/responses/BadRequest"
                    },
                    "401": {
                        "$ref": "#/responses/Unauthorized"
                    },
                    "404": {
                        "$ref": "#/responses/NotFound"
                    },
                    "500": {
                        "$ref": "#/responses/InternalServerError"
                    }
                },
                "x-finastra-data-classification": ["Restricted"]
            }
        }
    },
    "parameters": {
        "X-Request-ID": {
            "name": "X-Request-ID",
            "in": "header",
            "description": "Passes a unique ID defined by the requestor. When a call is sent with the same request ID, the original response is returned without running the call again. This ID may also be used for logging or troubleshooting.",
            "type": "string"
        },
        "X-IP-Address": {
            "name": "X-IP-Address",
            "type": "string",
            "in": "header",
            "description": "Passes the IP address defined by the device sending the call.",
            "x-finastra-data-classification": ["Restricted"]
        },
        "X-User-Agent": {
            "name": "X-User-Agent",
            "type": "string",
            "in": "header",
            "description": "Passes system information for the User-Agent header that is defined by the web browser making the call."
        },
        "X-Device-Type": {
            "name": "X-Device-Type",
            "type": "string",
            "in": "header",
            "description": "Passes the device type sending the call.",
            "enum": ["iphone", "ipad", "android", "browser", "unknown"],
            "default": "unknown"
        },
        "X-Device-ID": {
            "name": "X-Device-ID",
            "in": "header",
            "description": "Passes a UUID (Universally Unique Identifier) for the device sending the call  When a new device ID is passed, the user may be prompted to register their device. <br/> ***Note:*** UUID identifies either a device or a device dependent application that is registered to use the system. For accurate identification, this ID should not be edited until the device is removed.",
            "type": "string"
        },
        "accountOrder": {
            "name": "accountOrder",
            "in": "body",
            "required": true,
            "description": "Passes a list of account IDs in the correct order.",
            "schema": {
                "type": "array",
                "items": {
                    "type": "string",
                    "description": "account ID."
                }
            }
        }
    },
    "definitions": {
        "GeneralResponse": {
            "description": "Defines a response for requests.",
            "title": "GeneralResponse",
            "type": "object",
            "required": ["message"],
            "properties": {
                "code": {
                    "type": "string",
                    "description": "Returns a unique code that identifies the message generated."
                },
                "message": {
                    "type": "string",
                    "description": "Returns a message from the system that is used to troubleshoot failed requests."
                }
            }
        },
        "Address": {
            "description": "Defines an address.",
            "title": "Address",
            "type": "object",
            "required": ["streetLine_1", "city", "state", "postalCode", "addressType"],
            "properties": {
                "streetLine_1": {
                    "type": "string",
                    "description": "Defines line 1 of the street address.",
                    "x-finastra-data-classification": ["Restricted"]
                },
                "streetLine_2": {
                    "type": "string",
                    "description": "Defines line 2 of the street address.",
                    "x-finastra-data-classification": ["Restricted"]
                },
                "streetLine_3": {
                    "type": "string",
                    "description": "Defines line 3 of the street address.",
                    "x-finastra-data-classification": ["Restricted"]
                },
                "city": {
                    "type": "string",
                    "description": "Defines the city address.",
                    "x-finastra-data-classification": ["Restricted"]
                },
                "state": {
                    "type": "string",
                    "description": "Defines the state address.",
                    "x-finastra-data-classification": ["Restricted"]
                },
                "country": {
                    "type": "string",
                    "description": "Defines the country address.",
                    "x-finastra-data-classification": ["Restricted"]
                },
                "province": {
                    "type": "string",
                    "description": "Defines the province address.",
                    "x-finastra-data-classification": ["Restricted"]
                },
                "postalCode": {
                    "type": "string",
                    "description": "Defines the postal code of the address.",
                    "x-finastra-data-classification": ["Restricted"]
                },
                "postalCodeExtension": {
                    "type": "string",
                    "description": "Defines the four digit postal add-on code.",
                    "x-finastra-data-classification": ["Restricted"]
                },
                "addressType": {
                    "type": "string",
                    "description": "Defines the address type.",
                    "enum": ["physical", "mailing"]
                }
            }
        },
        "Email": {
            "description": "Defines an email address and type.",
            "title": "Email",
            "type": "object",
            "required": ["address", "emailType"],
            "properties": {
                "address": {
                    "type": "string",
                    "description": "Defines the email address.",
                    "x-finastra-data-classification": ["Restricted"]
                },
                "emailType": {
                    "type": "string",
                    "description": "Defines the email address type.",
                    "enum": ["primary", "alternate"]
                }
            }
        },
        "Account": {
            "description": "Defines an account.",
            "title": "Account",
            "type": "object",
            "required": ["accountId", "formattedAccountNumber"],
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Defines a unique ID that identifies an account.",
                    "example": "112",
                    "x-finastra-data-classification": ["Restricted"]
                },
                "formattedAccountNumber": {
                    "type": "string",
                    "description": "Defines the formatted account number.",
                    "x-finastra-data-classification": ["Restricted"]
                },
                "accountType": {
                    "type": "string",
                    "description": "Defines the account type.",
                    "enum": ["CHK", "SAV", "MM", "CD", "CARD", "LOC", "LOAN", "NONE"]
                },
                "nickname": {
                    "type": "string",
                    "description": "Defines the account nickname.",
                    "x-finastra-data-classification": ["Restricted"]
                }
            }
        },
        "AccountWithBalances": {
            "description": "Defines an account including balances on the account.",
            "title": "AccountWithBalances",
            "allOf": [
                {
                    "$ref": "#/definitions/Account"
                },
                {
                    "type": "object",
                    "properties": {
                        "balances": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/AccountBalance"
                            }
                        }
                    }
                }
            ]
        },
        "AccountBalance": {
            "description": "Defines an account balance.",
            "title": "AccountBalance",
            "type": "object",
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Defines the account type.",
                    "enum": ["current", "available"]
                },
                "amount": {
                    "type": "number",
                    "description": "Defines the account balance amount.",
                    "format": "float"
                }
            }
        },
        "ExtendedAccount": {
            "description": "Defines extended account information.",
            "title": "ExtendedAccount",
            "allOf": [
                {
                    "$ref": "#/definitions/AccountWithBalances"
                },
                {
                    "type": "object",
                    "properties": {
                        "accountNumber": {
                            "type": "string",
                            "description": "Defines the account number.",
                            "x-finastra-data-classification": ["Restricted"]
                        },
                        "alternateAccountNumber": {
                            "type": "string",
                            "description": "Account number provided in an alternate format, if available.",
                            "x-finastra-data-classification": ["Restricted"]
                        },
                        "coreComponents": {
                            "type": "object",
                            "description": "Defines the core components.",
                            "properties": {
                                "number": {
                                    "type": "string",
                                    "description": "Defines the number."
                                },
                                "type": {
                                    "type": "string",
                                    "description": "Defines the type."
                                },
                                "subtype": {
                                    "type": "string",
                                    "description": "Defines the subtype."
                                },
                                "suffix": {
                                    "type": "string",
                                    "description": "Defines the suffix."
                                }
                            },
                            "x-finastra-data-classification": ["Restricted"]
                        },
                        "micr": {
                            "type": "string",
                            "description": "Defines the MICR number.",
                            "x-finastra-data-classification": ["Restricted"]
                        },
                        "openDate": {
                            "type": "string",
                            "description": "Defines the account open date.",
                            "format": "date"
                        },
                        "privileges": {
                            "$ref": "#/definitions/AccountPrivileges"
                        },
                        "isAsset": {
                            "type": "boolean",
                            "description": "Indictates whether the account is an asset",
                            "default": false
                        },
                        "isLiability": {
                            "type": "boolean",
                            "description": "Indictates whether the account is a liability",
                            "default": false
                        },
                        "branchNumber": {
                            "type": "string",
                            "description": "Defines the branch number.",
                            "x-finastra-data-classification": ["Restricted"]
                        }
                    }
                }
            ]
        },
        "ExtendedAccountWithDetails": {
            "description": "Defines extended account information including details.",
            "title": "ExtendedAccountWithDetails",
            "allOf": [
                {
                    "$ref": "#/definitions/ExtendedAccount"
                },
                {
                    "type": "object",
                    "properties": {
                        "details": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/Detail"
                            }
                        },
                        "statementDeliveryOption": {
                            "type": "string"
                        },
                        "statementDeliveryEmail": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/Email"
                            }
                        },
                        "statementDeliveryEnrollmentTime": {
                            "type": "string"
                        },
                        "ownerName": {
                            "type": "string",
                            "x-finastra-data-classification": ["Restricted"]
                        },
                        "ownerAddress": {
                            "$ref": "#/definitions/Address"
                        }
                    }
                }
            ]
        },
        "Transaction": {
            "description": "Defines an account transaction.",
            "title": "Transaction",
            "type": "object",
            "required": ["id", "accountId"],
            "properties": {
                "id": {
                    "type": "string",
                    "description": "Defines a unique ID that identifies a transaction."
                },
                "accountId": {
                    "type": "string",
                    "description": "Defines a unique ID that identifies an account.",
                    "x-finastra-data-classification": ["Restricted"]
                },
                "transactionDate": {
                    "type": "string",
                    "format": "date",
                    "description": "Defines the transaction date.",
                    "example": "2016-08-29"
                },
                "transactionAmount": {
                    "type": "number",
                    "format": "float",
                    "description": "Defines the transaction amount.",
                    "example": 100
                },
                "runningBalance": {
                    "type": "number",
                    "format": "float",
                    "description": "Defines the running balance amount.",
                    "example": 1000
                },
                "pending": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the amount is pending.",
                    "example": false
                },
                "debit": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the amount is a debit.",
                    "example": true
                },
                "checkImage": {
                    "type": "string",
                    "description": "Defines the check image.",
                    "x-finastra-data-classification": ["Restricted"]
                },
                "checkNumber": {
                    "type": "integer",
                    "description": "Defines the check number.",
                    "format": "int32"
                },
                "description": {
                    "type": "string",
                    "description": "Defines the transaction description."
                },
                "description2": {
                    "type": "string",
                    "description": "Defines the transaction description line 2."
                },
                "transactionCategory": {
                    "type": "string",
                    "description": "Defines the transaction category."
                },
                "markAttended": {
                    "type": "boolean",
                    "description": "Defines the mark attended flag for transaction.",
                    "default": false
                }
            }
        },
        "AccountPrivileges": {
            "description": "Defines privileges on an account.",
            "title": "AccountPrivileges",
            "type": "object",
            "properties": {
                "internalTransferFromAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may send internal transfers with the account."
                },
                "internalTransferToAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may receive internal transfers with the account."
                },
                "rdcAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may use Remote Deposit Capture (RDC) for the account."
                },
                "c2cSendAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may send customer-to-customer payments with the account."
                },
                "c2cReceiveAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may receive customer-to-customer payments with the account."
                },
                "p2pSendAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may send person-to-person payments with the account."
                },
                "p2pReceiveAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may receive person-to-person payments with the account."
                },
                "externalTransferSendAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may send external transfers with the account."
                },
                "externalTransferReceiveAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may receive external transfers with the account."
                },
                "loanTransferFromAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may transfer loan funds from the account."
                },
                "loanTransferToAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may transfer loan funds to the account."
                },
                "statementDeliveryAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may receive paper statements for the account."
                },
                "stopPaymentAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may use stop payments are allowed for the account."
                },
                "textBankingFromAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may transfer funds from the account using text banking."
                },
                "textBankingToAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may transfer funds to the account using text banking."
                },
                "achAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may process ACH transactions for the account."
                },
                "wiresAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may process wire transactions for the account."
                },
                "billPayAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may use the account for bill pay."
                },
                "displayHistoryAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may view historical transactions for the account."
                },
                "displayBalanceAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may view balances for the account."
                },
                "alertsAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may set up alerts for the account."
                },
                "transferCrossEntityAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may set up cross entity transfers for the account."
                },
                "checkStatusAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may view check status for the account."
                },
                "checkWithdrawalAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may have check withdrawals for the account."
                },
                "orderChecksAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may order checks for the account."
                },
                "picturePayAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may use Picture Pay for the account."
                },
                "balanceVerificationRequired": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder must use balance verification for the account."
                },
                "sweepTransfersAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may use SWEEP transfers for the account."
                },
                "federalTaxPaymentsAllowed": {
                    "type": "boolean",
                    "default": false,
                    "description": "Indicates whether the account holder may send federal tax payments with the account."
                }
            }
        },
        "Detail": {
            "description": "Defines a label and value for a detail item.",
            "title": "Detail",
            "type": "object",
            "properties": {
                "value": {
                    "type": "string",
                    "description": "Defines the value of the detail item."
                },
                "label": {
                    "type": "string",
                    "description": "Defines the label of the detail item."
                }
            }
        },
        "AccountPersonalization": {
            "description": "Defines personalized account options.",
            "title": "AccountPersonalization",
            "type": "object",
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "Indicates whether the account number is masked.",
                    "default": false
                },
                "nickname": {
                    "type": "string",
                    "description": "Defines the account nickname.",
                    "x-finastra-data-classification": ["Restricted"]
                }
            }
        },
        "TransactionUpdate": {
            "description": "Defines the transaction fields to be updated.",
            "title": "TransactionUpdate",
            "type": "object",
            "properties": {
                "markAttended": {
                    "type": "boolean",
                    "description": "Updated mark attended flag for transaction."
                }
            }
        }
    },
    "responses": {
        "NotFound": {
            "description": "The specified resource was not found",
            "schema": {
                "$ref": "#/definitions/GeneralResponse"
            }
        },
        "BadRequest": {
            "description": "Bad Request",
            "schema": {
                "$ref": "#/definitions/GeneralResponse"
            }
        },
        "Unauthorized": {
            "description": "Unauthorized",
            "schema": {
                "$ref": "#/definitions/GeneralResponse"
            }
        },
        "InternalServerError": {
            "description": "Internal Server Error",
            "schema": {
                "$ref": "#/definitions/GeneralResponse"
            }
        }
    }
}
