401GO Money Movement API

The Money Movement API from 401GO — 10 operation(s) for money movement.

Operations 19

GET /participants/{participant_id}/disbursements/ #
POST /participants/{participant_id}/disbursements/ #
GET /participants/{participant_id}/disbursements-info/ #
GET /participants/{participant_id}/disbursements/{disbursement_id}/ #
PUT /participants/{participant_id}/disbursements/{disbursement_id}/ #
DELETE /participants/{participant_id}/disbursements/{disbursement_id}/ #
GET /participants/{participant_id}/loan-requests/ #
POST /participants/{participant_id}/loan-requests/ #
GET /participants/{participant_id}/loan-requests-info/ #
PUT /participants/{participant_id}/loan-requests-signature/{loan_request_id}/ #
GET /participants/{participant_id}/loan-requests/{loan_request_id}/ #
PUT /participants/{participant_id}/loan-requests/{loan_request_id}/ #
DELETE /participants/{participant_id}/loan-requests/{loan_request_id}/ #
GET /participants/{participant_id}/money-movement-history/ #
GET /participants/{participant_id}/rollovers/ #
POST /participants/{participant_id}/rollovers/ #
GET /participants/{participant_id}/rollovers/{rollover_id}/ #
PUT /participants/{participant_id}/rollovers/{rollover_id}/ #
DELETE /participants/{participant_id}/rollovers/{rollover_id}/ #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/401go-money-movement-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

401go-money-movement-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: 401go Money Movement API
  version: 1.0.0
  description: 'Operations tagged Money Movement across 2 of this provider''s published API definitions: 401go-money-movement-api-openapi.yml, 401go-openapi-original.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://app.401go.com/api
  description: Base URL reconciled from apis.yml
tags:
- name: Money Movement
paths:
  /participants/{participant_id}/disbursements/:
    servers:
    - url: https://app.401go.com/api
      description: Base URL reconciled from apis.yml
    get:
      operationId: participants_disbursements_list
      description: Get a list of participant's disbursements.
      parameters:
      - name: page
        required: false
        in: query
        description: A page number within the paginated result set.
        schema:
          type: integer
      - name: page_size
        required: false
        in: query
        description: Number of results to return per page.
        schema:
          type: integer
      - in: path
        name: participant_id
        schema:
          type: string
        required: true
      tags:
      - Money Movement
      security:
      - oauth2: []
      - knoxApiToken: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: object
                required:
                - count
                - results
                properties:
                  count:
                    type: integer
                    example: 123
                  next:
                    type:
                    - string
                    - 'null'
                    format: uri
                    example: http://api.example.org/accounts/?page=4
                  previous:
                    type:
                    - string
                    - 'null'
                    format: uri
                    example: http://api.example.org/accounts/?page=2
                  results:
                    type: array
                    items:
                      type: object
                      description: Convert chosen empty strings into None during serialization. Specify with the `empty_to_null_fields` Meta attribute.
                      properties:
                        object_id:
                          type: string
                          readOnly: true
                          description: Unique identifier for the disbursement.
                        reason:
                          type: string
                          enum:
                          - Termination of Employment
                          - Hardship Withdrawal
                          - Pre-Retirement Withdrawal
                          - Qualified Domestic Relations Order
                          - Retirement Age Withdrawal
                          - Required Minimum Distribution
                          - Permanent Disability
                          - Death of Participant
                          - Plan Termination
                          - IRA
                          - Emergency Expense
                          - Correction
                          - Move Rollover Funds
                          - Permissible Withdrawal
                          description: The reason for the disbursement request.
                        pretax_amount:
                          type: string
                          format: decimal
                          pattern: ^-?\d{0,8}(?:\.\d{0,2})?$
                          description: Pre-tax amount to disburse.
                        posttax_amount:
                          type: string
                          format: decimal
                          pattern: ^-?\d{0,8}(?:\.\d{0,2})?$
                          description: Post-tax amount to disburse.
                        pretax_memo:
                          type: string
                          description: Payment memo for pre-tax disbursement (max 20 characters). Required when pretax_amount is provided.
                          maxLength: 20
                        posttax_memo:
                          type: string
                          description: Payment memo for post-tax disbursement (max 20 characters). Required when posttax_amount is provided.
                          maxLength: 20
                        posttax_payment_method:
                          type: string
                          enum:
                          - Check
                          - Wire
                          - ACH Transfer
                          - Fee Transfer
                          - Forced Rollover
                          description: Payment method for post-tax portion (if different from pre-tax). Only used in split disbursements when different from payment_method.
                        posttax_bank_name:
                          type: string
                          description: Bank name for post-tax portion. Only used in split disbursements when different from payment_method.
                        posttax_bank_routing_aba_number:
                          type: string
                          description: Routing number for post-tax portion. Only used in split disbursements when different from payment_method. Not necessary for Check Payments.
                        posttax_bank_account_number:
                          type: string
                          description: Account number for post-tax portion. Only used in split disbursements when different from payment_method. Not necessary for Check Payments.
                        posttax_name_on_bank_account:
                          type: string
                          description: Account holder for post-tax portion. Only used in split disbursements when different from payment_method. Not necessary for Check Payments.
                        payment_method:
                          type: string
                          enum:
                          - Check
                          - Wire
                          - ACH Transfer
                          - Fee Transfer
                          - Forced Rollover
                          description: The payment method to use (e.g., Check, ACH, Wire). For single disbursements, use this field regardless of tax type. For split disbursements, this applies to the pre-tax portion.
                        status:
                          type: string
                          readOnly: true
                          description: The current status of the disbursement (e.g., Pending Approval, Funds Sent, etc.)
                        is_rollover:
                          type: boolean
                          default: false
                          description: Set to true if this is a rollover to a new provider.
                        payment_address:
                          allOf:
                          - type: object
                            description: A participant's Address
                            properties:
                              address_line_1:
                                type: string
                                maxLength: 100
                              address_line_2:
                                type: string
                                maxLength: 100
                              city:
                                type: string
                                maxLength: 80
                              state:
                                type: string
                                maxLength: 80
                              postal_code:
                                type: string
                                maxLength: 20
                              country:
                                type: string
                                default: US
                                maxLength: 80
                            required:
                            - address_line_1
                            - city
                            - postal_code
                            - state
                          description: Payment address for pre-tax portion (defaults to participant's address if not provided). Only required if different from participant's address.
                        posttax_payment_address:
                          allOf:
                          - type: object
                            description: A participant's Address
                            properties:
                              address_line_1:
                                type: string
                                maxLength: 100
                              address_line_2:
                                type: string
                                maxLength: 100
                              city:
                                type: string
                                maxLength: 80
                              state:
                                type: string
                                maxLength: 80
                              postal_code:
                                type: string
                                maxLength: 20
                              country:
                                type: string
                                default: US
                                maxLength: 80
                            required:
                            - address_line_1
                            - city
                            - postal_code
                            - state
                          description: Payment address for post-tax portion (defaults to participant's address if not provided).
                        bank_name:
                          type: string
                          description: Name of the bank for ACH/Wire payments (used for pre-tax portion in splits). For single disbursements, use this field regardless of tax type. For split disbursements, this applies to the pre-tax portion
                        bank_routing_aba_number:
                          type: string
                          description: Routing (ABA) number for the bank account. For single disbursements, use this field regardless of tax type. For split disbursements, this applies to the pre-tax portion. Not necessary for Check Payments.
                        bank_account_number:
                          type: string
                          description: Bank account number for payment. For single disbursements, use this field regardless of tax type. For split disbursements, this applies to the pre-tax portion. Not necessary for Check Payments.
                        name_on_bank_account:
                          type: string
                          description: Name of the account holder for the bank account. For single disbursements, use this field regardless of tax type. For split disbursements, this applies to the pre-tax portion. Not necessary for Check Payments.
                        federal_withholding_percent:
                          type: string
                          format: decimal
                          pattern: ^-?\d{0,3}(?:\.\d{0,2})?$
                          description: Federal tax withholding percent (required for Hardship and RMD disbursements). Enter as percentage (e.g., 10.0 for 10%)
                        hardship:
                          type: string
                          enum:
                          - Expenses for Medical Care
                          - Purchase of a Principal Residence
                          - Educational Fees
                          - Prevent Eviction or Foreclosure
                          - Funeral Expenses
                          - Repair Damage to Principal Residence
                          - Qualified Federally Declared Disasters
                          description: Specific hardship reason (required for hardship disbursements).
                        name:
                          type: string
                          description: The participant's name
                        dob:
                          type: string
                          description: The participant's date of birth
                        married:
                          type: boolean
                          description: The participant's marital status
                        phone:
                          type: string
                          description: The participant's phone number
                        address:
                          allOf:
                          - type: object
                            description: A participant's Address
                            properties:
                              address_line_1:
                                type: string
                                maxLength: 100
                              address_line_2:
                                type: string
                                maxLength: 100
                              city:
                                type: string
                                maxLength: 80
                              state:
                                type: string
                                maxLength: 80
                              postal_code:
                                type: string
                                maxLength: 20
                              country:
                                type: string
                                default: US
                                maxLength: 80
                            required:
                            - address_line_1
                            - city
                            - postal_code
                            - state
                          description: The participant's address
                      required:
                      - address
                      - dob
                      - married
                      - name
                      - object_id
                      - payment_method
                      - phone
                      - reason
                      - status
          description: ''
        '401':
          description: 'Unauthorized: Missing or invalid authentication'
        '403':
          description: 'Forbidden: Insufficient permissions or scopes'
    post:
      operationId: participants_disbursements_create
      description: "Create a new disbursement request.\nField Usage Patterns:\n1. Single Disbursement (pre-tax only or post-tax only):\n    - Use regular fields (payment_method, bank_name, etc.) for payment details\n    - Use pretax_memo for pre-tax disbursements\n    - Use posttax_memo for post-tax disbursements\n    - Use payment_address for pre-tax disbursements\n    - Use posttax_payment_address for post-tax disbursements\n\n2. Split Disbursement (both pre-tax and post-tax):\n    - Use regular fields (payment_method, bank_name, etc.) for pre-tax portion\n    - Use posttax_* fields for post-tax portion if different from pre-tax\n    - Both pretax_memo and posttax_memo are required\n    - Both payment_address and posttax_payment_address can be specified if different"
      parameters:
      - in: path
        name: participant_id
        schema:
          type: string
        required: true
      tags:
      - Money Movement
      requestBody:
        content:
          application/json:
            schema:
              type: object
              description: Convert chosen empty strings into None during serialization. Specify with the `empty_to_null_fields` Meta attribute.
              properties:
                reason:
                  type: string
                  enum:
                  - Termination of Employment
                  - Hardship Withdrawal
                  - Pre-Retirement Withdrawal
                  - Qualified Domestic Relations Order
                  - Retirement Age Withdrawal
                  - Required Minimum Distribution
                  - Permanent Disability
                  - Death of Participant
                  - Plan Termination
                  - IRA
                  - Emergency Expense
                  - Correction
                  - Move Rollover Funds
                  - Permissible Withdrawal
                  description: The reason for the disbursement request.
                pretax_amount:
                  type: string
                  format: decimal
                  pattern: ^-?\d{0,8}(?:\.\d{0,2})?$
                  description: Pre-tax amount to disburse.
                posttax_amount:
                  type: string
                  format: decimal
                  pattern: ^-?\d{0,8}(?:\.\d{0,2})?$
                  description: Post-tax amount to disburse.
                pretax_memo:
                  type: string
                  description: Payment memo for pre-tax disbursement (max 20 characters). Required when pretax_amount is provided.
                  maxLength: 20
                posttax_memo:
                  type: string
                  description: Payment memo for post-tax disbursement (max 20 characters). Required when posttax_amount is provided.
                  maxLength: 20
                posttax_payment_method:
                  type: string
                  enum:
                  - Check
                  - Wire
                  - ACH Transfer
                  - Fee Transfer
                  - Forced Rollover
                  description: Payment method for post-tax portion (if different from pre-tax). Only used in split disbursements when different from payment_method.
                posttax_bank_name:
                  type: string
                  description: Bank name for post-tax portion. Only used in split disbursements when different from payment_method.
                posttax_bank_routing_aba_number:
                  type: string
                  description: Routing number for post-tax portion. Only used in split disbursements when different from payment_method. Not necessary for Check Payments.
                posttax_bank_account_number:
                  type: string
                  description: Account number for post-tax portion. Only used in split disbursements when different from payment_method. Not necessary for Check Payments.
                posttax_name_on_bank_account:
                  type: string
                  description: Account holder for post-tax portion. Only used in split disbursements when different from payment_method. Not necessary for Check Payments.
                payment_method:
                  type: string
                  enum:
                  - Check
                  - Wire
                  - ACH Transfer
                  - Fee Transfer
                  - Forced Rollover
                  description: The payment method to use (e.g., Check, ACH, Wire). For single disbursements, use this field regardless of tax type. For split disbursements, this applies to the pre-tax portion.
                hardship_proof_document:
                  type: string
                  format: byte
                  description: Base64-encoded proof document required for hardship disbursements and death disbursements.
                  writeOnly: true
                hardship_signature:
                  type: string
                  format: byte
                  description: 'Base64-encoded signature image for hardship disbursements. Recommended dimensions: 500px width x 150px height (10:3 aspect ratio) to match the final document format.'
                  writeOnly: true
                is_rollover:
                  type: boolean
                  default: false
                  description: Set to true if this is a rollover to a new provider.
                payment_address:
                  allOf:
                  - type: object
                    description: A participant's Address
                    properties:
                      address_line_1:
                        type: string
                        minLength: 1
                        maxLength: 100
                      address_line_2:
                        type: string
                        maxLength: 100
                      city:
                        type: string
                        minLength: 1
                        maxLength: 80
                      state:
                        type: string
                        minLength: 1
                        maxLength: 80
                      postal_code:
                        type: string
                        minLength: 1
                        maxLength: 20
                      country:
                        type: string
                        minLength: 1
                        default: US
                        maxLength: 80
                    required:
                    - address_line_1
                    - city
                    - postal_code
                    - state
                  description: Payment address for pre-tax portion (defaults to participant's address if not provided). Only required if different from participant's address.
                posttax_payment_address:
                  allOf:
                  - type: object
                    description: A participant's Address
                    properties:
                      address_line_1:
                        type: string
                        minLength: 1
                        maxLength: 100
                      address_line_2:
                        type: string
                        maxLength: 100
                      city:
                        type: string
                        minLength: 1
                        maxLength: 80
                      state:
                        type: string
                        minLength: 1
                        maxLength: 80
                      postal_code:
                        type: string
                        minLength: 1
                        maxLength: 20
                      country:
                        type: string
                        minLength: 1
                        default: US
                        maxLength: 80
                    required:
                    - address_line_1
                    - city
                    - postal_code
                    - state
                  description: Payment address for post-tax portion (defaults to participant's address if not provided).
                bank_name:
                  type: string
                  description: Name of the bank for ACH/Wire payments (used for pre-tax portion in splits). For single disbursements, use this field regardless of tax type. For split disbursements, this applies to the pre-tax portion
                bank_routing_aba_number:
                  type: string
                  description: Routing (ABA) number for the bank account. For single disbursements, use this field regardless of tax type. For split disbursements, this applies to the pre-tax portion. Not necessary for Check Payments.
                bank_account_number:
                  type: string
                  description: Bank account number for payment. For single disbursements, use this field regardless of tax type. For split disbursements, this applies to the pre-tax portion. Not necessary for Check Payments.
                name_on_bank_account:
                  type: string
                  description: Name of the account holder for the bank account. For single disbursements, use this field regardless of tax type. For split disbursements, this applies to the pre-tax portion. Not necessary for Check Payments.
                federal_withholding_percent:
                  type: string
                  format: decimal
                  pattern: ^-?\d{0,3}(?:\.\d{0,2})?$
                  description: Federal tax withholding percent (required for Hardship and RMD disbursements). Enter as percentage (e.g., 10.0 for 10%)
                hardship:
                  type: string
                  enum:
                  - Expenses for Medical Care
                  - Purchase of a Principal Residence
                  - Educational Fees
                  - Prevent Eviction or Foreclosure
                  - Funeral Expenses
                  - Repair Damage to Principal Residence
                  - Qualified Federally Declared Disasters
                  description: Specific hardship reason (required for hardship disbursements).
                name:
                  type: string
                  minLength: 1
                  description: The participant's name
                dob:
                  type: string
                  format: date
                  description: The participant's date of birth
                married:
                  type: boolean
                  description: The participant's marital status
                phone:
                  type: string
                  minLength: 1
                  description: The participant's phone number
                address:
                  allOf:
                  - type: object
                    description: A participant's Address
                    properties:
                      address_line_1:
                        type: string
                        minLength: 1
                        maxLength: 100
                      address_line_2:
                        type: string
                        maxLength: 100
                      city:
                        type: string
                        minLength: 1
                        maxLength: 80
                      state:
                        type: string
                        minLength: 1
                        maxLength: 80
                      postal_code:
                        type: string
                        minLength: 1
                        maxLength: 20
                      country:
                        type: string
                        minLength: 1
                        default: US
                        maxLength: 80
                    required:
                    - address_line_1
                    - city
                    - postal_code
                    - state
                  description: The participant's address
              required:
              - address
              - dob
              - married
              - name
              - payment_method
              - phone
              - reason
          application/x-www-form-urlencoded:
            schema:
              type: object
              description: Convert chosen empty strings into None during serialization. Specify with the `empty_to_null_fields` Meta attribute.
              properties:
                reason:
                  type: string
                  enum:
                  - Termination of Employment
                  - Hardship Withdrawal
                  - Pre-Retirement Withdrawal
                  - Qualified Domestic Relations Order
                  - Retirement Age Withdrawal
                  - Required Minimum Distribution
                  - Permanent Disability
                  - Death of Participant
                  - Plan Termination
                  - IRA
                  - Emergency Expense
                  - Correction
                  - Move Rollover Funds
                  - Permissible Withdrawal
                  description: The reason for the disbursement request.
                pretax_amount:
                  type: string
                  format: decimal
                  pattern: ^-?\d{0,8}(?:\.\d{0,2})?$
                  description: Pre-tax amount to disburse.
                posttax_amount:
                  type: string
                  format: decimal
                  pattern: ^-?\d{0,8}(?:\.\d{0,2})?$
                  description: Post-tax amount to disburse.
                pretax_memo:
                  type: string
                  description: Payment memo for pre-tax disbursement (max 20 characters). Required when pretax_amount is provided.
                  maxLength: 20
                posttax_memo:
                  type: string
                  description: Payment memo for post-tax disbursement (max 20 characters). Required when posttax_amount is provided.
                  maxLength: 20
                posttax_payment_method:
                  type: string
                  enum:
                  - Check
                  - Wire
                  - ACH Transfer
                  - Fee Transfer
                  - Forced Rollover
                  description: Payment method for post-tax portion (if different from pre-tax). Only used in split disbursements when different from payment_method.
                posttax_bank_name:
                  type: string
                  description: Bank name for post-tax portion. Only used in split disbursements when different from payment_method.
                posttax_bank_routing_aba_number:
                  type: string
                  description: Routing number for post-tax portion. Only used in split disbursements when different from payment_method. Not necessary for Check Payments.
                posttax_bank_account_number:
                  type: string
                  description: Account number for post-tax portion. Only used in split disbursements when different from payment_method. Not necessary for Check Payments.
                posttax_name_on_bank_account:
                  type: string
                  description: Account holder for post-tax portion. Only used in split disbursements when different from payment_method. Not necessary for Check Payments.
                payment_method:
                  type: string
                  enum:
                  - Check
                  - Wire
                  - ACH Transfer
                  - Fee Transfer
                  - Forced Rollover
                  description: The payment method to use (e.g., Check, ACH, Wire). For single disbursements, use this field regardless of tax type. For split disbursements, this applies to the pre-tax portion.
                hardship_proof_document:
                  type: string
                  format: byte
                  description: Base64-encoded proof document required for hardship disbursements and death disbursements.
                  writeOnly: true
                hardship_signature:
                  type: string
                  format: byte
                  description: 'Base64-encoded signature image for hardship disbursements. Recommended dimensions: 500px width x 150px height (10:3 aspect ratio) to match the final document format.'
                  writeOnly: true
                is_rollover:
                  type: boolean
                  default: false
                  description: Set to true if this is a rollover to a new provider.
                payment_address:
                  allOf:
                  - type: object
                    description: A participant's Address
                    properties:
                      address_line_1:
                        type: string
                        minLength: 1
                        maxLength: 100
                      address_line_2:
                        type: string
                        maxLength: 100
                      city:
                        type: string
                        minLength: 1
                        maxLength: 80
                      state:
                        type: string
                        minLength: 1
                        maxLength: 80
                      postal_code:
                        type: string
                        minLength: 1
                        maxLength: 20
                      country:
                        type: string
                        minLength: 1
                        default: US
                        maxLength: 80
                    required:
                    - address_line_1
                    - city
                    - postal_code
                    - state
                  description: Payment address for pre-tax portion (defaults to participant's address if not provided). Only required if different from participant's address.
                posttax_payment_address:
                  allOf:
                  - type: object
                    description: A participant's Address
                    properties:
                      address_line_1:
                        type: string
                        minLength: 1
                        maxLength: 100
                      address_line_2:

# --- truncated at 32 KB (227 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/401go/refs/heads/main/openapi/401go-money-movement-api-openapi.yml