openapi: 3.0.0 info: contact: name: MX Platform API url: https://www.mx.com/products/platform-api description: ' The MX Platform API is a powerful, fully-featured API designed to make aggregating and enhancing financial data easy and reliable. It can seamlessly connect your app or website to tens of thousands of financial institutions.' title: MX Platform Members API version: 0.1.0 servers: - url: https://api.mx.com - url: https://int-api.mx.com security: - basicAuth: [] tags: - name: Members paths: /users/{user_guid}/members: get: description: This endpoint returns an array which contains information on every member associated with a specific user. operationId: listMembers parameters: - description: Specify current page. example: 1 in: query name: page schema: type: integer - description: Specify records per page. example: 10 in: query name: records_per_page schema: type: integer - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string responses: '200': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/MembersResponseBody' description: OK summary: List members tags: - Members post: description: This endpoint allows you to create a new member. Members are created with the required parameters credentials and institution_code, and the optional parameters id and metadata. When creating a member, youll need to include the correct type of credential required by the financial institution and provided by the user. You can find out which credential type is required with the `/institutions/{institution_code}/credentials` endpoint. If successful, the MX Platform API will respond with the newly-created member object. Once you successfully create a member, MX will immediately validate the provided credentials and attempt to aggregate data for accounts and transactions. operationId: createMember parameters: - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/MemberCreateRequestBody' description: Member object to be created with optional parameters (id and metadata) and required parameters (credentials and institution_code) required: true responses: '200': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/MemberResponseBody' description: OK '202': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/MemberResponseBody' description: Accepted summary: Create member tags: - Members /users/{user_guid}/members/{member_guid}: delete: description: Accessing this endpoint will permanently delete a member. operationId: deleteMember parameters: - description: The unique id for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string responses: '204': description: No Content summary: Delete member tags: - Members get: description: Use this endpoint to read the attributes of a specific member. operationId: readMember parameters: - description: The unique id for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string responses: '200': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/MemberResponseBody' description: OK summary: Read member tags: - Members put: description: Use this endpoint to update a members attributes. Only the credentials, id, and metadata parameters can be updated. To get a list of the required credentials for the member, use the list member credentials endpoint. operationId: updateMember parameters: - description: The unique id for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/MemberUpdateRequestBody' description: Member object to be updated (While no single parameter is required, the request body can't be empty) required: true responses: '200': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/MemberResponseBody' description: OK summary: Update member tags: - Members /users/{user_guid}/members/{member_guid}/account_numbers: get: description: This endpoint returns a list of account numbers associated with the specified `member`. operationId: listAccountNumbersByMember parameters: - description: The unique id for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string - description: Specify current page. example: 1 in: query name: page schema: type: integer - description: Specify records per page. example: 10 in: query name: records_per_page schema: type: integer - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string responses: '200': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/AccountNumbersResponseBody' description: OK summary: List account numbers by member tags: - Members /users/{user_guid}/members/{member_guid}/account_owners: get: description: This endpoint returns an array with information about every account associated with a particular member. operationId: listAccountOwnersByMember parameters: - description: The unique id for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string - description: Specify current page. example: 1 in: query name: page schema: type: integer - description: Specify records per page. example: 10 in: query name: records_per_page schema: type: integer - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string responses: '200': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/AccountOwnersResponseBody' description: OK summary: List account owners by member tags: - Members /users/{user_guid}/members/{member_guid}/accounts: get: description: This endpoint returns a list of all the accounts associated with the specified `member`. operationId: listMemberAccounts parameters: - description: List only accounts whose member is managed by the user. example: true in: query name: member_is_managed_by_user schema: type: boolean - description: Specify current page. example: 1 in: query name: page schema: type: integer - description: Specify records per page. example: 10 in: query name: records_per_page schema: type: integer - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string - description: The unique id for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string responses: '200': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/AccountsResponseBody' description: OK summary: List accounts by member tags: - Members /users/{user_guid}/members/{member_guid}/accounts/{account_guid}: get: description: This endpoint allows you to read the attributes of an `account` resource. operationId: readAccountByMember parameters: - description: The unique id for an `account`. example: ACT-06d7f44b-caae-0f6e-1384-01f52e75dcb1 in: path name: account_guid required: true schema: type: string - description: The unique id for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string responses: '200': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/AccountResponseBody' description: OK summary: Read account by member tags: - Members put: description: This endpoint allows you to update certain attributes of an `account` resource, including manual accounts. For manual accounts, you can update every field listed. For aggregated accounts, you can only update `is_business`, `is_hidden` and `metadata`. operationId: updateAccountByMember parameters: - description: The unique id for an `account`. example: ACT-06d7f44b-caae-0f6e-1384-01f52e75dcb1 in: path name: account_guid required: true schema: type: string - description: The unique id for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/AccountUpdateRequestBody' required: true responses: '200': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/AccountResponseBody' description: OK summary: Update account by member tags: - Members /users/{user_guid}/members/{member_guid}/aggregate: post: description: Calling this endpoint initiates an aggregation event for the member. This brings in the latest account and transaction data from the connected institution. If this data has recently been updated, MX may not initiate an aggregation event. operationId: aggregateMember parameters: - description: The unique id for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string responses: '202': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/MemberResponseBody' description: Accepted summary: Aggregate member tags: - Members /users/{user_guid}/members/{member_guid}/challenges: get: description: Use this endpoint for information on what multi-factor authentication challenges need to be answered in order to aggregate a member. If the aggregation is not challenged, i.e., the member does not have a connection status of `CHALLENGED`, then code `204 No Content` will be returned. If the aggregation has been challenged, i.e., the member does have a connection status of `CHALLENGED`, then code `200 OK` will be returned - along with the corresponding credentials. operationId: listMemberChallenges parameters: - description: The unique id for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string - description: Specify current page. example: 1 in: query name: page schema: type: integer - description: Specify records per page. example: 10 in: query name: records_per_page schema: type: integer - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string responses: '200': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/ChallengesResponseBody' description: OK summary: List member challenges tags: - Members /users/{user_guid}/members/{member_guid}/check_balance: post: description: This endpoint operates much like the aggregate member endpoint except that it gathers only account balance information; it does not gather any transaction data. operationId: checkBalances parameters: - description: The unique id for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string responses: '202': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/MemberResponseBody' description: Accepted summary: Check balances tags: - Members /users/{user_guid}/members/{member_guid}/credentials: get: description: This endpoint returns an array which contains information on every non-MFA credential associated with a specific member. operationId: listMemberCredentials parameters: - description: The unique id for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string - description: Specify current page. example: 1 in: query name: page schema: type: integer - description: Specify records per page. example: 10 in: query name: records_per_page schema: type: integer - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string responses: '200': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/CredentialsResponseBody' description: OK summary: List member credentials tags: - Members /users/{user_guid}/members/{member_guid}/extend_history: post: description: Some institutions allow developers to access an extended transaction history with up to 24 months of data associated with a particular member. The process for fetching and then reading this extended transaction history is much like standard aggregation, and it may trigger multi-factor authentication. operationId: extendHistory parameters: - description: The unique identifier for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string - description: The unique identifier for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string responses: '202': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/MemberResponseBody' description: Accepted summary: Extend history tags: - Members /users/{user_guid}/members/{member_guid}/fetch_rewards: post: description: Calling this endpoint initiates an aggregation-type event which will gather the member's rewards information, as well as account and transaction information. Rewards data is also gathered with daily background aggregations. operationId: fetchRewards parameters: - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string - description: The unique identifier for the member. Defined by MX. example: MBR-fa7537f3-48aa-a683-a02a-b18345562f54 in: path name: member_guid required: true schema: type: string responses: '200': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/MemberResponseBody' description: OK summary: Fetch Rewards tags: - Members /users/{user_guid}/members/{member_guid}/fetch_statements: post: description: Use this endpoint to fetch the statements associated with a particular member. operationId: fetchStatements parameters: - description: The unique id for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string responses: '202': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/MemberResponseBody' description: Accepted summary: Fetch statements tags: - Members /users/{user_guid}/members/{member_guid}/fetch_tax_documents: post: description: Use this endpoint to fetch (aggregate) the tax documents associated with the specified member. This request **does not** return the latest tax documents. It just starts the document aggregation process and returns the initial state of the process. You must interact with the newly aggregated data using the other document endpoints in this reference. This request may also trigger multi-factor authentication which requires end-user input and a specific process for answering authentication challenges. operationId: fetchTaxDocuments parameters: - description: The unique id for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string responses: '202': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/MemberResponseBody' description: Accepted summary: Fetch Tax Documents tags: - Members /users/{user_guid}/members/{member_guid}/holdings: get: description: This endpoint returns all holdings associated with the specified `member` across all accounts. operationId: listHoldingsByMember parameters: - description: Filter holdings from this date. example: '2015-09-20' in: query name: from_date schema: type: string - description: The unique id for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string - description: Specify current page. example: 1 in: query name: page schema: type: integer - description: Specify records per page. example: 10 in: query name: records_per_page schema: type: integer - description: Filter holdings to this date. example: '2019-10-20' in: query name: to_date schema: type: string - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string responses: '200': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/HoldingsResponseBody' description: OK summary: List holdings by member tags: - Members /users/{user_guid}/members/{member_guid}/identify: post: description: The identify endpoint begins an identification process for an already-existing member. operationId: identifyMember parameters: - description: The unique id for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string responses: '202': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/MemberResponseBody' description: Accepted summary: Identify member tags: - Members /users/{user_guid}/members/{member_guid}/oauth_window_uri: get: description: This endpoint will generate an `oauth_window_uri` for the specified `member`. operationId: requestOAuthWindowURI parameters: - description: A URL that MX will redirect to at the end of OAuth with additional query parameters. Only available with `referral_source=APP`. example: https://mx.com in: query name: client_redirect_url schema: type: string - description: This indicates whether OAuth app2app behavior is enabled for institutions that support it. Defaults to `true`. This setting is not persistent. example: false in: query name: enable_app2app schema: type: string - description: The unique id for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string - description: Must be either `BROWSER` or `APP` depending on the implementation. Defaults to `BROWSER`. example: APP in: query name: referral_source schema: type: string - description: Setting this parameter to `true` will prevent the member from automatically aggregating after being redirected from the authorization page. example: false in: query name: skip_aggregation schema: type: boolean - description: A scheme for routing the user back to the application state they were previously in. Only available with `referral_source=APP`. example: mx in: query name: ui_message_webview_url_scheme schema: type: string - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string responses: '200': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/OAuthWindowResponseBody' description: OK summary: Request oauth window uri tags: - Members /users/{user_guid}/members/{member_guid}/resume: put: description: This endpoint answers the challenges needed when a member has been challenged by multi-factor authentication. operationId: resumeAggregation parameters: - description: The unique id for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/MemberResumeRequestBody' description: Member object with MFA challenge answers required: true responses: '202': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/MemberResponseBody' description: Accepted summary: Resume aggregation tags: - Members /users/{user_guid}/members/{member_guid}/rewards: get: description: Use this endpoint to list all the `rewards` associated with a specified `member`. operationId: listRewards parameters: - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string - description: The unique identifier for the member. Defined by MX. example: MBR-fa7537f3-48aa-a683-a02a-b18345562f54 in: path name: member_guid required: true schema: type: string responses: '200': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/RewardsResponseBody' description: OK summary: List Rewards tags: - Members /users/{user_guid}/members/{member_guid}/rewards/{reward_guid}: get: description: Use this endpoint to read a specific `reward` based on its unique GUID.. operationId: readRewards parameters: - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string - description: The unique identifier for the member. Defined by MX. example: MBR-fa7537f3-48aa-a683-a02a-b18345562f54 in: path name: member_guid required: true schema: type: string - description: The unique identifier for the rewards. Defined by MX. example: RWD-fa7537f3-48aa-a683-a02a-b324322f54 in: path name: reward_guid required: true schema: type: string responses: '200': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/RewardResponseBody' description: OK summary: Read Reward tags: - Members /users/{user_guid}/members/{member_guid}/statements: get: description: Use this endpoint to get an array of available statements. operationId: listStatementsByMember parameters: - description: The unique id for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string - description: Specify current page. example: 1 in: query name: page schema: type: integer - description: Specify records per page. example: 10 in: query name: records_per_page schema: type: integer - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string responses: '200': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/StatementsResponseBody' description: OK summary: List statements by member tags: - Members /users/{user_guid}/members/{member_guid}/statements/{statement_guid}: get: description: Use this endpoint to read a JSON representation of the statement. operationId: readStatementByMember parameters: - description: The unique id for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string - description: The unique id for a `statement`. example: STA-737a344b-caae-0f6e-1384-01f52e75dcb1 in: path name: statement_guid required: true schema: type: string - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string responses: '200': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/StatementResponseBody' description: OK summary: Read statement by member tags: - Members /users/{user_guid}/members/{member_guid}/statements/{statement_guid}.pdf: get: description: Use this endpoint to download a specified statement PDF. operationId: downloadStatementPDF parameters: - description: The unique id for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string - description: The unique id for a `statement`. example: STA-737a344b-caae-0f6e-1384-01f52e75dcb1 in: path name: statement_guid required: true schema: type: string - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string responses: '200': content: application/vnd.mx.api.v1+pdf: schema: format: binary type: string description: OK summary: Download statement pdf tags: - Members /users/{user_guid}/members/{member_guid}/status: get: description: This endpoint provides the status of the members most recent aggregation event. This is an important step in the aggregation process, and the results returned by this endpoint should determine what you do next in order to successfully aggregate a member. MX has introduced new, more detailed information on the current status of a members connection to a financial institution and the state of its aggregation - the connection_status field. These are intended to replace and expand upon the information provided in the status field, which will soon be deprecated; support for the status field remains for the time being. operationId: readMemberStatus parameters: - description: The unique id for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string responses: '200': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/MemberStatusResponseBody' description: OK summary: Read member status tags: - Members /users/{user_guid}/members/{member_guid}/tax_documents: get: description: Use this endpoint to get a paginated list of tax documents. operationId: listTaxDocuments parameters: - description: The unique id for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string - description: Specify current page. example: 1 in: query name: page schema: type: integer - description: Specify records per page. example: 10 in: query name: records_per_page schema: type: integer - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string responses: '200': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/TaxDocumentsResponseBody' description: OK summary: List Tax Documents tags: - Members /users/{user_guid}/members/{member_guid}/tax_documents/{tax_document_guid}: get: description: Use this endpoint to read the attributes of the specified tax document. operationId: readTaxDocument parameters: - description: The unique id for a `tax_document`. example: TAX-987dfds1b-e582-15b6-60c0-358f12466b4b in: path name: tax_document_guid required: true schema: type: string - description: The unique id for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string responses: '200': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/TaxDocumentResponseBody' description: OK summary: Read a Tax Document tags: - Members /users/{user_guid}/members/{member_guid}/tax_documents/{tax_document_guid}.pdf: get: description: Use this endpoint to download a PDF version of the specified tax document. The endpoint URL is the base URL appended with the uri of the tax_document. operationId: downloadTaxDocument parameters: - description: The unique id for a `tax_document`. example: TAX-987dfds1b-e582-15b6-60c0-358f12466b4b in: path name: tax_document_guid required: true schema: type: string - description: The unique id for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string responses: '200': content: application/vnd.mx.api.v1+pdf: schema: format: binary type: string description: OK summary: Download a Tax Document PDF tags: - Members /users/{user_guid}/members/{member_guid}/transactions: get: description: Requests to this endpoint return a list of transactions associated with the specified `member`, accross all accounts associated with that `member`. operationId: listTransactionsByMember parameters: - description: Filter transactions from this date. example: '2015-09-20' in: query name: from_date schema: type: string - description: The unique id for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string - description: Specify current page. example: 1 in: query name: page schema: type: integer - description: Specify records per page. example: 10 in: query name: records_per_page schema: type: integer - description: Filter transactions to this date. example: '2019-10-20' in: query name: to_date schema: type: string - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string responses: '200': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/TransactionsResponseBody' description: OK summary: List transactions by member tags: - Members /users/{user_guid}/members/{member_guid}/verify: post: description: The verify endpoint begins a verification process for a member. operationId: verifyMember parameters: - description: The unique id for a `member`. example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b in: path name: member_guid required: true schema: type: string - description: The unique id for a `user`. example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 in: path name: user_guid required: true schema: type: string responses: '200': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/MemberResponseBody' description: OK summary: Verify member tags: - Members components: schemas: MemberCreateRequest: properties: background_aggregation_is_disabled: example: false type: boolean credentials: items: $ref: '#/components/schemas/CredentialRequest' type: array id: example: unique_id type: string institution_code: example: chase type: string is_oauth: example: false type: boolean metadata: example: '\"credentials_last_refreshed_at\": \"2015-10-15\"' type: string skip_aggregation: example: false type: boolean required: - credentials - institution_code type: object StatementResponse: properties: account_guid: example: ACT-06d7f44b-caae-0f6e-1384-01f52e75dcb1 nullable: true type: string content_hash: example: ca53785b812d00ef821c3d94bfd6e5bbc0020504410589b7ea8552169f021981 nullable: true type: string created_at: example: '2016-10-13T18:08:00+00:00' nullable: true type: string guid: example: STA-737a344b-caae-0f6e-1384-01f52e75dcb1 nullable: true type: string member_guid: example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b nullable: true type: string updated_at: example: '2016-10-13T18:09:00+00:00' nullable: true type: string uri: example: uri/to/statement nullable: true type: string user_guid: example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 nullable: true type: string type: object OptionResponse: properties: label: example: IMAGE_1 nullable: true type: string value: example: image_data nullable: true type: string type: object CredentialResponse: properties: display_order: example: 1 nullable: true type: integer field_name: example: LOGIN nullable: true type: string field_type: example: TEXT nullable: true type: string guid: example: CRD-1ec152cd-e628-e81a-e852-d1e7104624da nullable: true type: string label: example: Username nullable: true type: string type: example: TEXT nullable: true type: string type: object RewardsResponseBody: properties: rewards: items: $ref: '#/components/schemas/RewardsResponse' type: array pagination: $ref: '#/components/schemas/PaginationResponse' type: object PaginationResponse: properties: current_page: example: 1 type: integer per_page: example: 25 type: integer total_entries: example: 1 type: integer total_pages: example: 1 type: integer type: object OAuthWindowResponseBody: properties: member: $ref: '#/components/schemas/OAuthWindowResponse' type: object TaxDocumentResponse: properties: content_hash: example: a16c580c4fcdfa8088edaa7b4d35b290 nullable: true type: string created_at: example: '2022-10-18T19:23:16Z' nullable: true type: string document_type: example: TAX1099_C nullable: true type: string guid: example: TAX-ee8776ea-468b-4b02-b95d-743adf6ba50e nullable: true type: string issued_on: example: '2022-03-31' nullable: true type: string member_guid: example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b nullable: true type: string tax_year: example: '2023' nullable: true type: string updated_at: example: '2022-10-18T19:23:16Z' nullable: true type: string uri: example: /users/USR-11141024-90b3-1bce-cac9-c06ced52ab4c/members/MBR-7c6f361b-e582-15b6-60c0-358f12466b4b/tax_documents/TAX-ee8776ea-468b-4b02-b95d-743adf6ba50e.pdf nullable: true type: string user_guid: example: USR-11141024-90b3-1bce-cac9-c06ced52ab4c nullable: true type: string type: object CredentialRequest: properties: guid: example: CRD-27d0edb8-1d50-5b90-bcbc-be270ca42b9f type: string value: example: password type: string type: object AccountNumberResponse: properties: account_guid: example: ACT-06d7f45b-caae-0f6e-1384-01f52e75dcb1 nullable: true type: string account_number: example: 10001 nullable: true type: string guid: example: ACN-8899832e-e5b4-42cd-aa25-bbf1dc889a8f nullable: true type: string loan_guarantor: example: U.S. DEPARTMENT OF EDUCATION nullable: true type: string loan_reference_number: example: 123456789012345 nullable: true type: string institution_number: example: 123 nullable: true type: string member_guid: example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b nullable: true type: string passed_validation: example: true nullable: true type: boolean routing_number: example: 68899990000000 nullable: true type: string sequence_number: example: 1-01 nullable: true type: string transit_number: example: 12345 nullable: true type: string user_guid: example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 nullable: true type: string type: object ImageOptionResponse: properties: data_uri: example: data:image/png;base64,iVBORw0KGgoAAAANSUh ... more image data ... nullable: true type: string label: example: IMAGE_1 nullable: true type: string value: example: image_data nullable: true type: string type: object AccountsResponseBody: properties: accounts: items: $ref: '#/components/schemas/AccountResponse' type: array pagination: $ref: '#/components/schemas/PaginationResponse' type: object RewardResponse: properties: account_guid: example: ACT-1234 type: string balance_type: example: EXPIRING_BALANCE type: string balance: example: 102 type: integer created_at: example: 2020-01-28T21:09:01+0000 type: string description: example: A description of the reward. type: string expires_on: example: '2020-02-28T00:00:00.000Z' type: string guid: example: RWD-1234 type: string member_guid: example: MBR-4567 type: string unit_type: example: POINTS type: string updated_at: example: '2023-06-01T19:18:06.000Z' type: string user_guid: example: USR-1234 type: string MemberUpdateRequestBody: properties: member: $ref: '#/components/schemas/MemberUpdateRequest' type: object MembersResponseBody: properties: members: items: $ref: '#/components/schemas/MemberResponse' type: array pagination: $ref: '#/components/schemas/PaginationResponse' type: object StatementsResponseBody: properties: pagination: $ref: '#/components/schemas/PaginationResponse' statements: items: $ref: '#/components/schemas/StatementResponse' type: array type: object StatementResponseBody: properties: statement: $ref: '#/components/schemas/StatementResponse' type: object ChallengesResponseBody: properties: challenges: items: $ref: '#/components/schemas/ChallengeResponse' type: array pagination: $ref: '#/components/schemas/PaginationResponse' type: object MemberResumeRequest: properties: challenges: items: $ref: '#/components/schemas/CredentialRequest' type: array type: object AccountUpdateRequestBody: properties: account: $ref: '#/components/schemas/AccountUpdateRequest' type: object AccountResponse: properties: account_number: example: '5366' nullable: true type: string account_ownership: example: INDIVIDUAL nullable: true type: string annuity_policy_to_date: example: '2016-10-13T17:57:37.000Z' nullable: true type: string annuity_provider: example: Metlife nullable: true type: string annuity_term_year: example: 2048 nullable: true type: number apr: example: 1 nullable: true type: number apy: example: 1 nullable: true type: number available_balance: example: 1000 nullable: true type: number available_credit: example: 1000 nullable: true type: number balance: example: 10000 nullable: true type: number cash_balance: example: 1000 nullable: true type: number cash_surrender_value: example: 1000 nullable: true type: number created_at: example: '2023-07-25T17:14:46Z' nullable: false type: string credit_limit: example: 100 nullable: true type: number currency_code: example: USD nullable: true type: string day_payment_is_due: example: 20 nullable: true type: integer death_benefit: example: 1000 nullable: true type: integer federal_insurance_status: example: INSURED nullable: true type: string guid: example: ACT-06d7f44b-caae-0f6e-1384-01f52e75dcb1 nullable: true type: string holdings_value: example: 1000 nullable: true type: number id: example: '1040434698' nullable: true type: string imported_at: example: '2015-10-13T17:57:37.000Z' nullable: true type: string institution_code: example: 3af3685e-05d9-7060-359f-008d0755e993 nullable: true type: string insured_name: example: Tommy Shelby nullable: true type: string interest_rate: example: 1 nullable: true type: number is_closed: example: false nullable: true type: boolean is_hidden: example: false nullable: true type: boolean is_manual: example: false nullable: true type: boolean last_payment: example: 100 nullable: true type: number last_payment_at: example: '2023-07-25T17:14:46Z' nullable: true type: string loan_amount: example: 1000 nullable: true type: number margin_balance: example: 1000 nullable: true type: number matures_on: example: '2015-10-13T17:57:37.000Z' nullable: true type: string member_guid: example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b nullable: true type: string member_id: example: member123 nullable: true type: string member_is_managed_by_user: example: false nullable: true type: boolean metadata: example: some metadata nullable: true type: string minimum_balance: example: 100 nullable: true type: number minimum_payment: example: 10 nullable: true type: number name: example: Test account 2 nullable: true type: string nickname: example: My Checking nullable: true type: string original_balance: example: 10 nullable: true type: number pay_out_amount: example: 10 nullable: true type: number payment_due_at: example: '2015-10-13T17:57:37.000Z' nullable: true type: string payoff_balance: example: 10 nullable: true type: number premium_amount: example: 1 nullable: true type: number property_type: example: VEHICLE nullable: true type: string routing_number: example: '68899990000000' nullable: true type: string started_on: example: '2015-10-13T17:57:37.000Z' nullable: true type: string statement_balance: example: 100.1 nullable: true type: number subtype: example: NONE nullable: true type: string today_ugl_amount: example: 1000.5 nullable: true type: number today_ugl_percentage: example: 6.9 nullable: true type: number total_account_value: example: 1 nullable: true type: number total_account_value_ugl: example: 1.1 nullable: true type: number type: example: SAVINGS nullable: true type: string updated_at: example: '2016-10-13T18:08:00.000Z' nullable: true type: string user_guid: example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 nullable: true type: string user_id: example: user123 nullable: true type: string type: object MemberUpdateRequest: properties: background_aggregation_is_disabled: example: false type: boolean credentials: items: $ref: '#/components/schemas/CredentialRequest' type: array id: example: unique_id type: string metadata: example: '\"credentials_last_refreshed_at\": \"2015-10-15\"' type: string skip_aggregation: example: false type: boolean type: object CredentialsResponseBody: properties: credentials: items: $ref: '#/components/schemas/CredentialResponse' type: array pagination: $ref: '#/components/schemas/PaginationResponse' type: object RewardResponseBody: properties: reward: $ref: '#/components/schemas/RewardResponse' type: object MemberCreateRequestBody: properties: client_redirect_url: example: https://mx.com type: string enable_app2app: example: false type: boolean member: $ref: '#/components/schemas/MemberCreateRequest' referral_source: example: APP type: string ui_message_webview_url_scheme: example: mx type: string type: object MemberStatusResponseBody: properties: member: $ref: '#/components/schemas/MemberStatusResponse' type: object AccountOwnerResponse: properties: account_guid: example: ACT-06d7f44b-caae-0f6e-1384-01f52e75dcb1 nullable: true type: string address: example: 123 This Way nullable: true type: string city: example: Middlesex nullable: true type: string country: example: US nullable: true type: string email: example: donnie@darko.co nullable: true type: string first_name: example: Donnie nullable: true type: string guid: example: ACO-63dc7714-6fc0-4aa2-a069-c06cdccd1af9 nullable: true type: string last_name: example: Darko nullable: true type: string member_guid: example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b nullable: true type: string owner_name: example: Donnie Darko nullable: true type: string phone: example: 555-555-5555 nullable: true type: string postal_code: example: 00000-0000 nullable: true type: string state: example: VA nullable: true type: string user_guid: example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 nullable: true type: string type: object HoldingResponse: properties: account_guid: example: ACT-06d7f44b-caae-0f6e-1384-01f52e75dcb1 nullable: true type: string cost_basis: example: 827 nullable: true type: number created_at: example: '2015-04-13T18:01:23.000Z' nullable: true type: string currency_code: example: USD nullable: true type: string cusip: example: 18383M878 nullable: true type: string daily_change: example: 2.5 nullable: true type: number description: example: Guggenheim Defensive Equity ETF nullable: true type: string guid: example: HOL-d65683e8-9eab-26bb-bcfd-ced159c9abe2 nullable: true type: string holding_type: example: MONEY_MARKET nullable: true type: string holding_type_id: example: 1 nullable: true type: integer id: example: ID-123 nullable: true type: string market_value: example: 989.5 nullable: true type: number member_guid: example: MBR-d65683e8-9eab-26bb-bcfd-ced159c9abe nullable: true type: string metadata: example: metadata nullable: true type: string purchase_price: example: 26.3 nullable: true type: number shares: example: 6 nullable: true type: number symbol: example: DEF nullable: true type: string updated_at: example: '2015-04-13T18:01:23.000Z' nullable: true type: string user_guid: example: USR-743e5d7f-1116-28fa-5de1-d3ba02e41d8d nullable: true type: string type: object OAuthWindowResponse: properties: guid: example: MBR-df96fd60-7122-4464-b3c2-ff11d8c74f6f nullable: true type: string oauth_window_uri: example: https://mxbank.mx.com/oauth/authorize?client_id=b8OikQ4Ep3NuSUrQ13DdvFuwpNx-qqoAsJDVAQCyLkQ&redirect_uri=https%3A%2F%2Fint-app.moneydesktop.com%2Foauth%2Fredirect_from&response_type=code&scope=openid&state=d745bd4ee6f0f9c184757f574bcc2df2 nullable: true type: string type: object ChallengeResponse: properties: field_name: example: Who is this guy? nullable: true type: string guid: example: CRD-ce76d2e3-86bd-ec4a-ec52-eb53b5194bf5 nullable: true type: string image_data: example: Who is this guy? nullable: true type: string image_options: items: $ref: '#/components/schemas/ImageOptionResponse' type: array label: example: Who is this guy? nullable: true type: string options: items: $ref: '#/components/schemas/OptionResponse' type: array type: example: IMAGE_DATA nullable: true type: string type: object TaxDocumentResponseBody: properties: tax_document: $ref: '#/components/schemas/TaxDocumentResponse' type: object TransactionResponse: properties: account_guid: example: ACT-06d7f44b-caae-0f6e-1384-01f52e75dcb1 nullable: true type: string account_id: example: account123 nullable: true type: string amount: example: 61.11 nullable: true type: number category: example: Groceries nullable: true type: string category_guid: example: CAT-9588eaad-90a4-bb5c-66c8-1812503d0db8 nullable: true type: string check_number_string: example: '6812' nullable: true type: string created_at: example: '2016-10-06T09:43:42.000Z' nullable: true type: string currency_code: example: USD nullable: true type: string date: example: '2013-09-23T00:00:00.000Z' nullable: true type: string description: example: Whole foods nullable: true type: string extended_transaction_type: example: partner_transaction_type nullable: true type: string guid: example: TRN-265abee9-889b-af6a-c69b-25157db2bdd9 nullable: true type: string id: example: transaction-265abee9-889b-af6a-c69b-25157db2bdd9 nullable: true type: string is_bill_pay: example: false nullable: true type: boolean is_direct_deposit: example: false nullable: true type: boolean is_expense: example: true nullable: true type: boolean is_fee: example: false nullable: true type: boolean is_income: example: false nullable: true type: boolean is_international: example: false nullable: true type: boolean is_overdraft_fee: example: false nullable: true type: boolean is_payroll_advance: example: false nullable: true type: boolean is_recurring: example: false nullable: true type: boolean is_subscription: example: false nullable: true type: boolean latitude: example: -43.2075 nullable: true type: number localized_description: example: This is a localized_description nullable: true type: string localized_memo: example: This is a localized_memo nullable: true type: string longitude: example: 139.691706 nullable: true type: number member_guid: example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b nullable: true type: string member_is_managed_by_user: example: false nullable: true type: boolean memo: example: This is a memo nullable: true type: string merchant_category_code: example: 5411 nullable: true type: integer merchant_guid: example: MCH-7ed79542-884d-2b1b-dd74-501c5cc9d25b nullable: true type: string merchant_location_guid: example: MCL-00024e59-18b5-4d79-b879-2a7896726fea nullable: true type: string metadata: example: some metadata nullable: true type: string original_description: example: WHOLEFDS TSQ 102 nullable: true type: string posted_at: example: '2016-10-07T06:00:00.000Z' nullable: true type: string status: example: POSTED nullable: true type: string top_level_category: example: Food & Dining nullable: true type: string transacted_at: example: '2016-10-06T13:00:00.000Z' nullable: true type: string type: example: DEBIT nullable: true type: string updated_at: example: '2016-10-07T05:49:12.000Z' nullable: true type: string user_guid: example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 nullable: true type: string user_id: example: user123 nullable: true type: string type: object MemberResponse: properties: aggregated_at: example: '2016-10-13T18:07:57.000Z' nullable: true type: string background_aggregation_is_disabled: example: false type: boolean connection_status: example: CONNECTED nullable: true type: string guid: example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b nullable: true type: string id: example: unique_id nullable: true type: string institution_code: example: chase nullable: true type: string is_being_aggregated: example: false nullable: true type: boolean is_managed_by_user: example: false nullable: true type: boolean is_manual: example: false nullable: true type: boolean is_oauth: example: false nullable: true type: boolean metadata: example: '\"credentials_last_refreshed_at\": \"2015-10-15\"' nullable: true type: string most_recent_job_detail_code: example: (deprecated) nullable: true type: string most_recent_job_detail_text: example: (deprecated) nullable: true type: string name: example: Chase Bank nullable: true type: string oauth_window_uri: example: https://mxbank.mx.com/oauth/authorize?client_id=b8OikQ4Ep3NuSUrQ13DdvFuwpNx-qqoAsJDVAQCyLkQ&redirect_uri=https%3A%2F%2Fint-app.moneydesktop.com%2Foauth%2Fredirect_from&response_type=code&scope=openid&state=d745bd4ee6f0f9c184757f574bcc2df2 nullable: true type: string successfully_aggregated_at: example: '2016-10-13T17:57:38.000Z' nullable: true type: string use_cases: example: - PFM - IAV nullable: true type: array items: example: PFM nullable: false type: string user_guid: example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 nullable: true type: string user_id: example: user123 nullable: true type: string type: object AccountResponseBody: properties: account: $ref: '#/components/schemas/AccountResponse' type: object MemberStatusResponse: properties: aggregated_at: example: '2016-10-13T18:07:57.000Z' nullable: true type: string challenges: items: $ref: '#/components/schemas/ChallengeResponse' type: array connection_status: example: CONNECTED nullable: true type: string guid: example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b nullable: true type: string has_processed_accounts: example: true nullable: true type: boolean has_processed_account_numbers: example: true nullable: true type: boolean has_processed_transactions: example: false nullable: true type: boolean is_authenticated: example: false nullable: true type: boolean is_being_aggregated: example: false nullable: true type: boolean successfully_aggregated_at: example: '2016-10-13T17:57:38.000Z' nullable: true type: string type: object TaxDocumentsResponseBody: properties: pagination: $ref: '#/components/schemas/PaginationResponse' tax_documents: items: $ref: '#/components/schemas/TaxDocumentResponse' type: array type: object HoldingsResponseBody: properties: holdings: items: $ref: '#/components/schemas/HoldingResponse' type: array pagination: $ref: '#/components/schemas/PaginationResponse' type: object MemberResponseBody: properties: member: $ref: '#/components/schemas/MemberResponse' type: object AccountNumbersResponseBody: properties: account_numbers: items: $ref: '#/components/schemas/AccountNumberResponse' type: array pagination: $ref: '#/components/schemas/PaginationResponse' type: object TransactionsResponseBody: properties: pagination: $ref: '#/components/schemas/PaginationResponse' transactions: items: $ref: '#/components/schemas/TransactionResponse' type: array type: object AccountUpdateRequest: properties: account_subtype: example: PERSONAL type: string account_type: example: SAVINGS type: string apr: example: 1 type: number apy: example: 1 type: number available_balance: example: 1000 type: number balance: example: 1000 type: number cash_surrender_value: example: 1000 type: number credit_limit: example: 100 type: number currency_code: example: USD type: string death_benefit: example: 1000 type: integer interest_rate: example: 1 type: number is_business: example: false type: boolean is_closed: example: false type: boolean is_hidden: example: false type: boolean loan_amount: example: 1000 type: number metadata: example: some metadata type: string name: example: Test account 2 type: string nickname: example: Swiss Account type: string original_balance: example: 10 type: number property_type: example: VEHICLE type: string skip_webhook: example: true type: boolean type: object RewardsResponse: properties: account_guid: example: ACT-1234 type: string balance_type: example: EXPIRING_BALANCE type: string balance: example: 102 type: integer created_at: example: 2020-01-28T21:09:01+0000 type: string description: example: A description of the reward. type: string expires_on: example: '2020-02-28T00:00:00.000Z' type: string guid: example: RWD-1234 type: string member_guid: example: MBR-4567 type: string unit_type: example: POINTS type: string updated_at: example: '2023-06-01T19:18:06.000Z' type: string user_guid: example: USR-1234 type: string MemberResumeRequestBody: properties: member: $ref: '#/components/schemas/MemberResumeRequest' type: object AccountOwnersResponseBody: properties: account_owners: items: $ref: '#/components/schemas/AccountOwnerResponse' type: array pagination: $ref: '#/components/schemas/PaginationResponse' type: object securitySchemes: basicAuth: scheme: basic type: http