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 Split API version: 0.1.0 servers: - url: https://api.mx.com - url: https://int-api.mx.com security: - basicAuth: [] tags: - name: Split paths: /users/{user_guid}/transactions/{transaction_guid}/split: delete: description: This endpoint deletes all split transactions linked to a parent transaction, but it leaves the parent transaction active. This request will also update the parent transaction's has_been_split field to false. This endpoint accepts the optional MX-Skip-Webhook header. parameters: - description: The unique id for a `transaction`. example: TRN-810828b0-5210-4878-9bd3-f4ce514f90c4 in: path name: transaction_guid required: true schema: type: string - description: The unique id for a `user`. example: USR-85628b0-5210-4878-9bd3-f4ce154f90c4 in: path name: user_guid required: true schema: type: string responses: '204': description: No content summary: Delete split transactions tags: - Split post: description: This endpoint creates two or more child transactions that are branched from a previous transaction. This endpoint allows you to link multiple categories, descriptions, and amounts to a parent transaction. When a split transaction is created, the parent transaction's `has_been_split` field will automatically be updated to true and the child transactions' `parent_guid` will have the transaction guid of the parent. The total amount of the child transactions must equal the amount of the parent transaction. Once a transaction has been split it can't be split again. In order to re-split a transaction, it must first be un-split. This can be done by calling the Delete Split Transactions endpoint. Calling this endpoint will delete the existing child transactions and update the parent transaction's `has_been_split` field to false. You can then re-split the parent transaction by calling Create Split Transaction again. parameters: - name: user_guid description: The unique identifier for the user. Defined by MX. in: path required: true schema: type: string - name: transaction_guid description: The unique identifier for the transaction. Defined by MX. in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/SplitTransactionRequestBody' responses: '200': content: application/vnd.mx.api.v1+json: schema: $ref: '#/components/schemas/SplitTransactionsResponseBody' description: OK summary: Create split transactions tags: - Split components: schemas: SplitTransactionRequestBody: properties: transactions: $ref: '#/components/schemas/SplitTransactionRequest' required: - transactions 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 SplitTransactionsResponseBody: properties: transactions: items: $ref: '#/components/schemas/TransactionResponse' type: array type: object SplitTransactionRequest: properties: amount: description: Amount of money you want to re-categorize. example: 54.19 type: number description: description: Description for the split transaction. example: Chevron Gas type: string category_guid: description: Unique identifier of the category. example: CAT-b6d61a19-30a7-e852-2703-bdfb4072289e type: string memo: description: Memo for the split transaction type: string example: Chips and Soda required: - amount securitySchemes: basicAuth: scheme: basic type: http