Viewing File: /home/ubuntu/btcthrottle-backend/routes/api.php

<?php

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;
use App\Helpers\Helper;
use App\Http\Controllers\Api\{TransactionWebhookController};

/*
|--------------------------------------------------------------------------
| API Routes
|--------------------------------------------------------------------------
|
| Here is where you can register API routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| is assigned the "api" middleware group. Enjoy building your API!
|
*/

Route::post('transaction_webhook', [TransactionWebhookController::class, 'transaction_webhook'])->name('transaction_webhook');

Route::group(['prefix' => 'user'], function () {

    Route::any('get_settings_json', function () {

        Helper::settings_generate_json();

        return json_decode(file_get_contents(storage_path('app/public/'.SETTINGS_JSON)), true);
    });

    Route::controller(Api\Auth\LoginController::class)->group(function () {

        Route::post('register', 'register');

        Route::post('login', 'login');

        Route::post('verify_email', 'verify_email');
        
        Route::post('send_verification_code', 'send_verification_code');
    });

    Route::controller(Api\Auth\ForgotPasswordController::class)->group(function() {

        Route::post('forgot_password', 'forgot_password');

        Route::post('reset_password', 'reset_password');
    });

    Route::controller(Api\UserPaymentController::class)->group(function() {

        Route::post('store', 'store');

        Route::post('list_admin_crypto_accounts', 'list_admin_crypto_accounts');
    });

    Route::group(['middleware' => ['auth:sanctum', 'appSignature'] ], function () {

        Route::controller(Api\AccountController::class)->group(function() {

            Route::post('dashboard', 'dashboard');

            Route::post('dashboard_chart', 'dashboard_chart');

            Route::post('profile', 'profile');

            Route::post('update_profile', 'update_profile');

            Route::post('change_password', 'change_password');

            Route::post('generate_api_key', 'generate_api_key');

            Route::post('view_api_key', 'view_api_key');

            Route::post('view_salt_key', 'view_salt_key');

            Route::post('delete_account', 'delete_account');

            Route::post('logout', 'logout');

            Route::post('update_email_verification_code', 'update_email_verification_code');
            
            Route::post('update_email', 'update_email');
        });

        Route::controller(Api\KycApiController::class)->group( function() {

            Route::post('kyc_create_applicant', 'kyc_create_applicant');

            Route::post('kyc_status_update', 'kyc_status_update');

        });

    });

    Route::group(['middleware' => ['appSignature'] ], function () {

        Route::controller(Api\TransactionController::class)->group(function() {

            Route::post('transaction_list', 'index');

            Route::post('create_transaction', 'store');

            Route::post('transaction_view', 'show')->name('api.transaction_view');

            Route::post('transaction_status', 'status');

            Route::post('send_callback', 'send_callback');

            Route::post('mark_as_refund', 'mark_as_refund');

            Route::post('export_transactions', 'export_transactions');
        });
    });
});

Route::group(['prefix' => 'v1'], function () {

    Route::group(['middleware' => ['appSignature'] ], function () {

        Route::controller(Api\TransactionController::class)->group(function() {

            Route::post('transaction_list', 'index');

            Route::post('create_transaction', 'store');

            Route::post('transaction_view', 'show')->name('api.transaction_view.v1');

            Route::post('transaction_status', 'status');

            Route::post('send_callback', 'send_callback');

            Route::post('mark_as_refund', 'mark_as_refund');

            Route::post('export_transactions', 'export_transactions');
        });
    });
});
Back to Directory File Manager