func (fes *APIServer) APIRoutes() []Route {
	var APIRoutes = []Route{
		{
			"APIBase",
			[]string{"GET"},
			RoutePathAPIBase,
			fes.APIBase,
			PublicAccess,  
		},
		{
			"APIKeyPair",
			[]string{"POST", "OPTIONS"},
			RoutePathAPIKeyPair,
			fes.APIKeyPair,
			PublicAccess,  
		},
		{
			"APIBalance",
			[]string{"POST", "OPTIONS"},
			RoutePathAPIBalance,
			fes.APIBalance,
			PublicAccess,  
		},
		{
			"APITransferDeSo",
			[]string{"POST", "OPTIONS"},
			RoutePathAPITransferDeSo,
			fes.APITransferDeSo,
			PublicAccess,  
		},
		{
			"APITransactionInfo",
			[]string{"POST", "OPTIONS"},
			RoutePathAPITransactionInfo,
			fes.APITransactionInfo,
			PublicAccess,  
		},
		{
			"APINodeInfo",
			[]string{"POST", "OPTIONS"},
			RoutePathAPINodeInfo,
			fes.APINodeInfo,
			AdminAccess,  
		},
		{
			"APIBlock",
			[]string{"POST", "OPTIONS"},
			RoutePathAPIBlock,
			fes.APIBlock,
			PublicAccess,  
		},
	}
	return APIRoutes
}
APIRoutes returns the routes for the public-facing API.
package routes
import (
	"bytes"
	"encoding/hex"
	"encoding/json"
	"fmt"
	"io"
	"math"
	"net/http"
	"reflect"
	"sort"
	"time"
	"github.com/deso-protocol/core/lib"
	"github.com/pkg/errors"
	"github.com/btcsuite/btcd/btcec"
	"github.com/golang/glog"
	bip39 "github.com/tyler-smith/go-bip39"
)
const (
	RoutePathAPIBase = "/api/v1"
	RoutePathAPIKeyPair = "/api/v1/key-pair"
	RoutePathAPIBalance = "/api/v1/balance"
	RoutePathAPITransferDeSo = "/api/v1/transfer-deso"
	RoutePathAPITransactionInfo = "/api/v1/transaction-info"
	RoutePathAPINodeInfo = "/api/v1/node-info"
	RoutePathAPIBlock = "/api/v1/block"
)