A computer-implemented method for selecting routing paths, wherein a routing path comprises a route and at least one characteristic from a set of characteristics, wherein the route comprises at least a start node and an end node and is provided by at least one carrier, wherein the method comprises: a. logging data of selected routing paths in response to requests from client devices to collect historical data of selected routing paths; b. storing the data of selected routing paths in a data storage; c. training a machine learning model on the historical data of selected routing paths received from the data storage, wherein an output of the machine learning model is a selection prediction for a routing path; d. in response to a request from a client device: i. determining a set of routes fulfilling the request; ii. determining a set of routing paths by combining the set of routes with characteristics from the set of characteristics; iii. applying the machine learning model on the set of routing paths to determine a subset of routing paths for which the selection prediction is higher than a threshold; iv. querying details of the subset of routing paths, wherein querying details of the subset of routing paths comprises querying at least one of the at least one carrier providing a route in the subset of routing paths and third-party system providing standard industry rules; v. determining valid routing paths; and vi. returning at least a subset of the details of at least a subset of the valid routing paths to the client device. a. logging data of selected routing paths in response to requests from client devices to collect historical data of selected routing paths; b. storing the data of selected routing paths in a data storage; c. training a machine learning model on the historical data of selected routing paths received from the data storage, wherein an output of the machine learning model is a selection prediction for a routing path; d. in response to a request from a client device: i. determining a set of routes fulfilling the request; ii. determining a set of routing paths by combining the set of routes with characteristics from the set of characteristics; iii. applying the machine learning model on the set of routing paths to determine a subset of routing paths for which the selection prediction is higher than a threshold; iv. querying details of the subset of routing paths, wherein querying details of the subset of routing paths comprises querying at least one of the at least one carrier providing a route in the subset of routing paths and third-party system providing standard industry rules; v. determining valid routing paths; and vi. returning at least a subset of the details of at least a subset of the valid routing paths to the client device. i. determining a set of routes fulfilling the request; ii. determining a set of routing paths by combining the set of routes with characteristics from the set of characteristics; iii. applying the machine learning model on the set of routing paths to determine a subset of routing paths for which the selection prediction is higher than a threshold; iv. querying details of the subset of routing paths, wherein querying details of the subset of routing paths comprises querying at least one of the at least one carrier providing a route in the subset of routing paths and third-party system providing standard industry rules; v. determining valid routing paths; and vi. returning at least a subset of the details of at least a subset of the valid routing paths to the client device.