Eyika \ Atom \ Framework \ Exceptions \ Http \ NotFoundHttpException (404)
Requested resource not found Eyika\Atom\Framework\Exceptions\Http\NotFoundHttpException thrown with message "Requested resource not found" Stacktrace: #25 Eyika\Atom\Framework\Exceptions\Http\NotFoundHttpException in /usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Route.php:369 #24 Eyika\Atom\Framework\Http\Route:handleNotFound in /usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Route.php:183 #23 Eyika\Atom\Framework\Http\Route:{closure:Eyika\Atom\Framework\Http\Route::dispatch():180} in /usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Middlewares/SubstituteBindings.php:28 #22 Eyika\Atom\Framework\Http\Middlewares\SubstituteBindings:handle in /usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Pipeline.php:83 #21 Eyika\Atom\Framework\Http\Pipeline:{closure:{closure:Eyika\Atom\Framework\Http\Pipeline::carry():71}:72} in /usr/home/basttyy/domains/api.sendmani.com/public_html/app/Http/Middlewares/EncryptCookies.php:38 #20 App\Http\Middlewares\EncryptCookies:handle in /usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Pipeline.php:83 #19 Eyika\Atom\Framework\Http\Pipeline:{closure:{closure:Eyika\Atom\Framework\Http\Pipeline::carry():71}:72} in /usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Middlewares/ShareErrorsFromSession.php:24 #18 Eyika\Atom\Framework\Http\Middlewares\ShareErrorsFromSession:handle in /usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Pipeline.php:83 #17 Eyika\Atom\Framework\Http\Pipeline:{closure:{closure:Eyika\Atom\Framework\Http\Pipeline::carry():71}:72} in /usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Middlewares/StartSession.php:24 #16 Eyika\Atom\Framework\Http\Middlewares\StartSession:handle in /usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Pipeline.php:83 #15 Eyika\Atom\Framework\Http\Pipeline:{closure:{closure:Eyika\Atom\Framework\Http\Pipeline::carry():71}:72} in /usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Middlewares/ServePublicAssets.php:58 #14 Eyika\Atom\Framework\Http\Middlewares\ServePublicAssets:handle in /usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Pipeline.php:83 #13 Eyika\Atom\Framework\Http\Pipeline:{closure:{closure:Eyika\Atom\Framework\Http\Pipeline::carry():71}:72} in /usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Middlewares/ConvertEmptyStringsToNull.php:20 #12 Eyika\Atom\Framework\Http\Middlewares\ConvertEmptyStringsToNull:handle in /usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Pipeline.php:83 #11 Eyika\Atom\Framework\Http\Pipeline:{closure:{closure:Eyika\Atom\Framework\Http\Pipeline::carry():71}:72} in /usr/home/basttyy/domains/api.sendmani.com/public_html/app/Http/Middlewares/TrimStrings.php:22 #10 App\Http\Middlewares\TrimStrings:handle in /usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Pipeline.php:83 #9 Eyika\Atom\Framework\Http\Pipeline:{closure:{closure:Eyika\Atom\Framework\Http\Pipeline::carry():71}:72} in /usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Middlewares/ValidatePostSize.php:25 #8 Eyika\Atom\Framework\Http\Middlewares\ValidatePostSize:handle in /usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Pipeline.php:83 #7 Eyika\Atom\Framework\Http\Pipeline:{closure:{closure:Eyika\Atom\Framework\Http\Pipeline::carry():71}:72} in /usr/home/basttyy/domains/api.sendmani.com/public_html/app/Http/Middlewares/PreventRequestsDuringMaintenance.php:44 #6 App\Http\Middlewares\PreventRequestsDuringMaintenance:handle in /usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Pipeline.php:83 #5 Eyika\Atom\Framework\Http\Pipeline:{closure:{closure:Eyika\Atom\Framework\Http\Pipeline::carry():71}:72} in /usr/home/basttyy/domains/api.sendmani.com/public_html/app/Http/Middlewares/TrustProxies.php:48 #4 App\Http\Middlewares\TrustProxies:handle in /usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Pipeline.php:83 #3 Eyika\Atom\Framework\Http\Pipeline:{closure:{closure:Eyika\Atom\Framework\Http\Pipeline::carry():71}:72} in /usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Pipeline.php:58 #2 Eyika\Atom\Framework\Http\Pipeline:run in /usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Route.php:193 #1 Eyika\Atom\Framework\Http\Route:dispatch in /usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Server.php:63 #0 Eyika\Atom\Framework\Http\Server:handle in /usr/home/basttyy/domains/api.sendmani.com/public_html/public/index.php:66
Stack frames (26)
25
Eyika\Atom\Framework\Exceptions\Http\NotFoundHttpException
/vendor/eyika/atom-framework/src/Http/Route.php369
24
Eyika\Atom\Framework\Http\Route handleNotFound
/vendor/eyika/atom-framework/src/Http/Route.php183
23
Eyika\Atom\Framework\Http\Route {closure:Eyika\Atom\Framework\Http\Route::dispatch():180}
/vendor/eyika/atom-framework/src/Http/Middlewares/SubstituteBindings.php28
22
Eyika\Atom\Framework\Http\Middlewares\SubstituteBindings handle
/vendor/eyika/atom-framework/src/Http/Pipeline.php83
21
Eyika\Atom\Framework\Http\Pipeline {closure:{closure:Eyika\Atom\Framework\Http\Pipeline::carry():71}:72}
/app/Http/Middlewares/EncryptCookies.php38
20
App\Http\Middlewares\EncryptCookies handle
/vendor/eyika/atom-framework/src/Http/Pipeline.php83
19
Eyika\Atom\Framework\Http\Pipeline {closure:{closure:Eyika\Atom\Framework\Http\Pipeline::carry():71}:72}
/vendor/eyika/atom-framework/src/Http/Middlewares/ShareErrorsFromSession.php24
18
Eyika\Atom\Framework\Http\Middlewares\ShareErrorsFromSession handle
/vendor/eyika/atom-framework/src/Http/Pipeline.php83
17
Eyika\Atom\Framework\Http\Pipeline {closure:{closure:Eyika\Atom\Framework\Http\Pipeline::carry():71}:72}
/vendor/eyika/atom-framework/src/Http/Middlewares/StartSession.php24
16
Eyika\Atom\Framework\Http\Middlewares\StartSession handle
/vendor/eyika/atom-framework/src/Http/Pipeline.php83
15
Eyika\Atom\Framework\Http\Pipeline {closure:{closure:Eyika\Atom\Framework\Http\Pipeline::carry():71}:72}
/vendor/eyika/atom-framework/src/Http/Middlewares/ServePublicAssets.php58
14
Eyika\Atom\Framework\Http\Middlewares\ServePublicAssets handle
/vendor/eyika/atom-framework/src/Http/Pipeline.php83
13
Eyika\Atom\Framework\Http\Pipeline {closure:{closure:Eyika\Atom\Framework\Http\Pipeline::carry():71}:72}
/vendor/eyika/atom-framework/src/Http/Middlewares/ConvertEmptyStringsToNull.php20
12
Eyika\Atom\Framework\Http\Middlewares\ConvertEmptyStringsToNull handle
/vendor/eyika/atom-framework/src/Http/Pipeline.php83
11
Eyika\Atom\Framework\Http\Pipeline {closure:{closure:Eyika\Atom\Framework\Http\Pipeline::carry():71}:72}
/app/Http/Middlewares/TrimStrings.php22
10
App\Http\Middlewares\TrimStrings handle
/vendor/eyika/atom-framework/src/Http/Pipeline.php83
9
Eyika\Atom\Framework\Http\Pipeline {closure:{closure:Eyika\Atom\Framework\Http\Pipeline::carry():71}:72}
/vendor/eyika/atom-framework/src/Http/Middlewares/ValidatePostSize.php25
8
Eyika\Atom\Framework\Http\Middlewares\ValidatePostSize handle
/vendor/eyika/atom-framework/src/Http/Pipeline.php83
7
Eyika\Atom\Framework\Http\Pipeline {closure:{closure:Eyika\Atom\Framework\Http\Pipeline::carry():71}:72}
/app/Http/Middlewares/PreventRequestsDuringMaintenance.php44
6
App\Http\Middlewares\PreventRequestsDuringMaintenance handle
/vendor/eyika/atom-framework/src/Http/Pipeline.php83
5
Eyika\Atom\Framework\Http\Pipeline {closure:{closure:Eyika\Atom\Framework\Http\Pipeline::carry():71}:72}
/app/Http/Middlewares/TrustProxies.php48
4
App\Http\Middlewares\TrustProxies handle
/vendor/eyika/atom-framework/src/Http/Pipeline.php83
3
Eyika\Atom\Framework\Http\Pipeline {closure:{closure:Eyika\Atom\Framework\Http\Pipeline::carry():71}:72}
/vendor/eyika/atom-framework/src/Http/Pipeline.php58
2
Eyika\Atom\Framework\Http\Pipeline run
/vendor/eyika/atom-framework/src/Http/Route.php193
1
Eyika\Atom\Framework\Http\Route dispatch
/vendor/eyika/atom-framework/src/Http/Server.php63
0
Eyika\Atom\Framework\Http\Server handle
/public/index.php66
/usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Route.php
        } elseif (is_array($callback) && count($callback) > 1) {
            [$controller, $method] = $callback;
            $controllerInstance = new $controller;
            return call_user_func_array([$controllerInstance, $method], array_merge([$request], array_values($parameters)));
        } elseif (is_string($callback)) {
            return include_once __DIR__ . "/$callback";
        } else {
            throw new NotFoundHttpException('Route not found');
        }
    }
 
    // Handle 404 Not Found
    protected static function handleNotFound($request)
    {
        if (isset(self::$routes['ANY']['/404'])) {
            $callback = self::$routes['ANY']['/404']['callback'];
            return self::executeCallback($callback, $request, []);
        }
 
        throw new NotFoundHttpException('Requested resource not found');
    }
}
 
Arguments
  1. "Requested resource not found"
    
/usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Route.php
        foreach (self::$routes[$requestMethod] ?? [] as $route => $data) {
            if (self::matchesRoute($route, $requestUri, $parameters)) {
                $request->route_params = Arr::wrap(sanitize_data($parameters));
                self::$currentRoute = $route;
                $routeMatched = true;
                break;
            }
        }
    
        // Set up the middleware pipeline
        $middlewares = array_merge(
            static::$defaultMiddlewares,
            static::findRouteMiddlewares($requestMethod, $requestUri)
        );
    
        // Core handler for the pipeline
        $coreHandler = function ($request) use ($routeMatched, $requestMethod, $requestUri) {
            // If no route matches, set up a 404 handler
            if (!$routeMatched) {
                return self::handleNotFound($request)->send();
            }
            $callback = self::$routes[$requestMethod][self::$currentRoute]['callback'];
            return self::executeCallback($callback, $request, $request->route_params ?? []);
        };
    
        // Run the pipeline
        $response = (new Pipeline())
            ->through($middlewares)
            ->then($coreHandler)
            ->run($request);
    
        // Output the response
        if ($response instanceof BaseResponse)
            return $response->send();
        elseif (is_string($response)) {
            echo $response;
            return true;
        } else return true;
    }
 
Arguments
  1. Eyika\Atom\Framework\Http\Request {#158}
    
/usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Middlewares/SubstituteBindings.php
use Eyika\Atom\Framework\Http\Request;
use Eyika\Atom\Framework\Support\Arr;
use Eyika\Atom\Framework\Support\Database\Contracts\ModelInterface;
use Eyika\Atom\Framework\Support\Database\Contracts\UserModelInterface;
use Eyika\Atom\Framework\Support\NamespaceHelper;
 
class SubstituteBindings implements MiddlewareInterface
{
    /**
     * Handle an incoming request.
     *
     * @throws NotFoundHttpException
     */
    public function handle(Request $request, Closure $next, ...$ignoreKeys): BaseResponse
    {
        // Get the route parameters from the request
        $routeParams = $request->route_params;
 
        if (empty($routeParams))
            return $next($request);
 
        // Substitute bindings for each parameter
        foreach ($routeParams as $key => $value) {
            if (Arr::exists($ignoreKeys, $key))
                continue;
 
            if (is_numeric($value)) {
                $value = sanitize_data($value);
                // Example: replace `{user}` with an instance of User model
                $model = $this->resolveModel($key, $value);
                if ($model === null) {
                    continue;
                }
                if ($model) {
                    $routeParams[$key] = $model;
                } else {
                    throw new ModelNotFoundException("unable to retrieve $key with id $value");
                }
            }
        }
Arguments
  1. Eyika\Atom\Framework\Http\Request {#158}
    
/usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Pipeline.php
     * Get the callable that wraps middleware around the next handler.
     * Create the closure chain for the pipeline.
     *
     * @return callable
     */
    protected function carry(): callable
    {
        return function (Closure $next, string|array|callable $pipe): callable {
            return function (Request $passable) use ($next, $pipe) {
                if (is_string($pipe) || is_array($pipe)) {
                    // Resolve middleware class and parameters
                    [$pipeClass, $parameters] = $this->resolveMiddleware($pipe);
                    $pipe = is_callable($pipeClass) ? $pipeClass : new $pipeClass;
                } else {
                    $parameters = [];
                }
 
                // Call the middleware's handle method or invoke it
                $resp = method_exists($pipe, 'handle')
                    ? $pipe->handle($passable, $next, ...$parameters)
                    : $pipe($passable, $next);
 
                if (!$resp instanceof BaseResponse && !is_string($resp)) {
                    $pipename = getCallableName($pipe);
                    throw new BaseException("$pipename must return a BaseResponse object or string");
                }
                return $resp;
            };
        };
    }
 
    /**
     * Resolve middleware from a string definition.
     */
    protected function resolveMiddleware(string|array $pipe)
    {
        // Split the pipe string to extract class and parameters
        $parts = is_array($pipe) ? $pipe : explode(':', $pipe, 2);
        $pipeClass = $parts[0];
        $parameters = isset($parts[1]) ? explode(',', $parts[1]) : [];
Arguments
  1. Eyika\Atom\Framework\Http\Request {#158}
    
  2. Closure($request) {#132 …3}
    
/usr/home/basttyy/domains/api.sendmani.com/public_html/app/Http/Middlewares/EncryptCookies.php
    protected array $except = [
        'PHPSESSID', // Add other session-related cookies here
        'XSRF-TOKEN', // Example: CSRF token cookie
    ];    
 
    /**
     * Handle an incoming request.
     *
     * @param Request $request
     * @param Closure $next
     * @return BaseResponse
     */
    public function handle(Request $request, Closure $next): BaseResponse
    {
        try {
            // Decrypt incoming request cookies
            $this->decryptCookies($request);
        
            // Process the request and get the response
            $response = $next($request);
        
            // Ensure `$response` is a valid `BaseResponse` object
            if (!$response instanceof BaseResponse) {
                throw new \UnexpectedValueException('Middleware expects a BaseResponse instance.');
            }
 
            // Encrypt cookies in the response
            $this->encryptCookies($response);
 
            // Return the processed response
            return $response;
        } catch (\Exception $e) {
            // logger()->error('Cookie decryption error:', [
            //     'message' => $e->getMessage(),
            //     'trace' => $e->getTraceAsString()
            // ]);
            throw $e;
        }
    }
 
Arguments
  1. Eyika\Atom\Framework\Http\Request {#158}
    
/usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Pipeline.php
     * Get the callable that wraps middleware around the next handler.
     * Create the closure chain for the pipeline.
     *
     * @return callable
     */
    protected function carry(): callable
    {
        return function (Closure $next, string|array|callable $pipe): callable {
            return function (Request $passable) use ($next, $pipe) {
                if (is_string($pipe) || is_array($pipe)) {
                    // Resolve middleware class and parameters
                    [$pipeClass, $parameters] = $this->resolveMiddleware($pipe);
                    $pipe = is_callable($pipeClass) ? $pipeClass : new $pipeClass;
                } else {
                    $parameters = [];
                }
 
                // Call the middleware's handle method or invoke it
                $resp = method_exists($pipe, 'handle')
                    ? $pipe->handle($passable, $next, ...$parameters)
                    : $pipe($passable, $next);
 
                if (!$resp instanceof BaseResponse && !is_string($resp)) {
                    $pipename = getCallableName($pipe);
                    throw new BaseException("$pipename must return a BaseResponse object or string");
                }
                return $resp;
            };
        };
    }
 
    /**
     * Resolve middleware from a string definition.
     */
    protected function resolveMiddleware(string|array $pipe)
    {
        // Split the pipe string to extract class and parameters
        $parts = is_array($pipe) ? $pipe : explode(':', $pipe, 2);
        $pipeClass = $parts[0];
        $parameters = isset($parts[1]) ? explode(',', $parts[1]) : [];
Arguments
  1. Eyika\Atom\Framework\Http\Request {#158}
    
  2. Closure(Request $passable) {#129 …4}
    
/usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Middlewares/ShareErrorsFromSession.php
use Closure;
use Eyika\Atom\Framework\Http\BaseResponse;
use Eyika\Atom\Framework\Http\Request;
use Eyika\Atom\Framework\Http\Contracts\MiddlewareInterface;
use Eyika\Atom\Framework\Support\Facade\Blade;
 
class ShareErrorsFromSession implements MiddlewareInterface
{
    /**
     * Handle an incoming request.
     *
     */
    public function handle(Request $request, Closure $next): BaseResponse
    {
        // Share errors with the view
        if ($request->hasSession()) {
            $this->shareErrors($request);
        }
 
        return $next($request);
    }
 
    /**
     * Share errors from the session with the view.
     *
     * @param Request $request
     * @return void
     */
    protected function shareErrors(Request $request): void
    {
        $session = $request->getSession();
 
        if ($session->has(BaseResponse::REQUEST_ERRORS_KEY)) {
            $errors = $session->get(BaseResponse::REQUEST_ERRORS_KEY);
            $this->shareWithViews($errors);
            $session->unset(BaseResponse::REQUEST_ERRORS_KEY);
        }
        if ($session->has(BaseResponse::REQUEST_VALIDATION_ERRORS_KEY)) {
            $errors = $session->get(BaseResponse::REQUEST_VALIDATION_ERRORS_KEY);
            $this->shareValidationWithViews($errors);
Arguments
  1. Eyika\Atom\Framework\Http\Request {#158}
    
/usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Pipeline.php
     * Get the callable that wraps middleware around the next handler.
     * Create the closure chain for the pipeline.
     *
     * @return callable
     */
    protected function carry(): callable
    {
        return function (Closure $next, string|array|callable $pipe): callable {
            return function (Request $passable) use ($next, $pipe) {
                if (is_string($pipe) || is_array($pipe)) {
                    // Resolve middleware class and parameters
                    [$pipeClass, $parameters] = $this->resolveMiddleware($pipe);
                    $pipe = is_callable($pipeClass) ? $pipeClass : new $pipeClass;
                } else {
                    $parameters = [];
                }
 
                // Call the middleware's handle method or invoke it
                $resp = method_exists($pipe, 'handle')
                    ? $pipe->handle($passable, $next, ...$parameters)
                    : $pipe($passable, $next);
 
                if (!$resp instanceof BaseResponse && !is_string($resp)) {
                    $pipename = getCallableName($pipe);
                    throw new BaseException("$pipename must return a BaseResponse object or string");
                }
                return $resp;
            };
        };
    }
 
    /**
     * Resolve middleware from a string definition.
     */
    protected function resolveMiddleware(string|array $pipe)
    {
        // Split the pipe string to extract class and parameters
        $parts = is_array($pipe) ? $pipe : explode(':', $pipe, 2);
        $pipeClass = $parts[0];
        $parameters = isset($parts[1]) ? explode(',', $parts[1]) : [];
Arguments
  1. Eyika\Atom\Framework\Http\Request {#158}
    
  2. Closure(Request $passable) {#128 …4}
    
/usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Middlewares/StartSession.php
use Closure;
use Exception;
use Eyika\Atom\Framework\Http\BaseResponse;
use Eyika\Atom\Framework\Http\Request;
use Eyika\Atom\Framework\Http\Contracts\MiddlewareInterface;
use Eyika\Atom\Framework\Http\Session;
use Eyika\Atom\Framework\Support\Facade\Facade;
 
class StartSession  implements MiddlewareInterface
{
    /**
     * Handle an incoming request.
     *
     */
    public function handle(Request $request, Closure $next): BaseResponse
    {
        if (strtolower($request->method()) !== "options") {
            $this->startSession($request);
        }
        return $next($request);
    }
 
    /**
     * Start the session for the request.
     *
     * @param Request $request
     * @return void
     */
    protected function startSession(Request $request)
    {
        if (!$request->hasSession()) {
            $session = $this->createSession();
            $request->setSession($session);
        }
 
        $request->getSession()->start();
    }
 
    /**
     * Save the session data after the response has been sent.
Arguments
  1. Eyika\Atom\Framework\Http\Request {#158}
    
/usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Pipeline.php
     * Get the callable that wraps middleware around the next handler.
     * Create the closure chain for the pipeline.
     *
     * @return callable
     */
    protected function carry(): callable
    {
        return function (Closure $next, string|array|callable $pipe): callable {
            return function (Request $passable) use ($next, $pipe) {
                if (is_string($pipe) || is_array($pipe)) {
                    // Resolve middleware class and parameters
                    [$pipeClass, $parameters] = $this->resolveMiddleware($pipe);
                    $pipe = is_callable($pipeClass) ? $pipeClass : new $pipeClass;
                } else {
                    $parameters = [];
                }
 
                // Call the middleware's handle method or invoke it
                $resp = method_exists($pipe, 'handle')
                    ? $pipe->handle($passable, $next, ...$parameters)
                    : $pipe($passable, $next);
 
                if (!$resp instanceof BaseResponse && !is_string($resp)) {
                    $pipename = getCallableName($pipe);
                    throw new BaseException("$pipename must return a BaseResponse object or string");
                }
                return $resp;
            };
        };
    }
 
    /**
     * Resolve middleware from a string definition.
     */
    protected function resolveMiddleware(string|array $pipe)
    {
        // Split the pipe string to extract class and parameters
        $parts = is_array($pipe) ? $pipe : explode(':', $pipe, 2);
        $pipeClass = $parts[0];
        $parameters = isset($parts[1]) ? explode(',', $parts[1]) : [];
Arguments
  1. Eyika\Atom\Framework\Http\Request {#158}
    
  2. Closure(Request $passable) {#127 …4}
    
/usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Middlewares/ServePublicAssets.php
                    }
                    $allowedOrigins = config('cors.allowed_origins', ['*']);
                    $origin = $request->headers('Origin');
 
                    $response = Response::setHeader("Content-Type", $mime, BaseResponse::STATUS_OK);
 
                    if ($allowedOrigins[0] === '*' || in_array($origin, $allowedOrigins)) {
                        $response->setHeader("Access-Control-Allow-Origin", '*');
                        $response->setHeader('Access-Control-Allow-Methods', "GET, OPTIONS");
                        $response->setHeader('Access-Control-Allow-Headers', "Content-Type");
                    }
 
                    return $response->body(file_get_contents($path));
                }
 
                return Response::html("File Not Found", BaseResponse::STATUS_NOT_FOUND);
            }
        }
 
        return $next($request);
    }
}
 
Arguments
  1. Eyika\Atom\Framework\Http\Request {#158}
    
/usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Pipeline.php
     * Get the callable that wraps middleware around the next handler.
     * Create the closure chain for the pipeline.
     *
     * @return callable
     */
    protected function carry(): callable
    {
        return function (Closure $next, string|array|callable $pipe): callable {
            return function (Request $passable) use ($next, $pipe) {
                if (is_string($pipe) || is_array($pipe)) {
                    // Resolve middleware class and parameters
                    [$pipeClass, $parameters] = $this->resolveMiddleware($pipe);
                    $pipe = is_callable($pipeClass) ? $pipeClass : new $pipeClass;
                } else {
                    $parameters = [];
                }
 
                // Call the middleware's handle method or invoke it
                $resp = method_exists($pipe, 'handle')
                    ? $pipe->handle($passable, $next, ...$parameters)
                    : $pipe($passable, $next);
 
                if (!$resp instanceof BaseResponse && !is_string($resp)) {
                    $pipename = getCallableName($pipe);
                    throw new BaseException("$pipename must return a BaseResponse object or string");
                }
                return $resp;
            };
        };
    }
 
    /**
     * Resolve middleware from a string definition.
     */
    protected function resolveMiddleware(string|array $pipe)
    {
        // Split the pipe string to extract class and parameters
        $parts = is_array($pipe) ? $pipe : explode(':', $pipe, 2);
        $pipeClass = $parts[0];
        $parameters = isset($parts[1]) ? explode(',', $parts[1]) : [];
Arguments
  1. Eyika\Atom\Framework\Http\Request {#158}
    
  2. Closure(Request $passable) {#126 …4}
    
/usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Middlewares/ConvertEmptyStringsToNull.php
<?php
 
namespace Eyika\Atom\Framework\Http\Middlewares;
 
use Closure;
use Eyika\Atom\Framework\Http\BaseResponse;
use Eyika\Atom\Framework\Http\Request;
use Eyika\Atom\Framework\Http\Contracts\MiddlewareInterface;
 
class ConvertEmptyStringsToNull implements MiddlewareInterface
{
    /**
     * Handle an incoming request.
     *
     */
    public function handle(Request $request, Closure $next): BaseResponse
    {
        $this->clean($request);
 
        return $next($request);
    }
 
    /**
     * Clean the request's data by converting empty strings to null.
     *
     * @param Request $request
     * @return void
     */
    protected function clean(Request $request)
    {
        $input = $request->input();
        $query = $request->query();
 
        $cleanedInput = $this->convertEmptyStringsToNull($input);
        $cleanedQuery = $this->convertEmptyStringsToNull($query);
 
        $request->replaceInput($cleanedInput);
        $request->replaceQuery($cleanedQuery);
    }
 
Arguments
  1. Eyika\Atom\Framework\Http\Request {#158}
    
/usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Pipeline.php
     * Get the callable that wraps middleware around the next handler.
     * Create the closure chain for the pipeline.
     *
     * @return callable
     */
    protected function carry(): callable
    {
        return function (Closure $next, string|array|callable $pipe): callable {
            return function (Request $passable) use ($next, $pipe) {
                if (is_string($pipe) || is_array($pipe)) {
                    // Resolve middleware class and parameters
                    [$pipeClass, $parameters] = $this->resolveMiddleware($pipe);
                    $pipe = is_callable($pipeClass) ? $pipeClass : new $pipeClass;
                } else {
                    $parameters = [];
                }
 
                // Call the middleware's handle method or invoke it
                $resp = method_exists($pipe, 'handle')
                    ? $pipe->handle($passable, $next, ...$parameters)
                    : $pipe($passable, $next);
 
                if (!$resp instanceof BaseResponse && !is_string($resp)) {
                    $pipename = getCallableName($pipe);
                    throw new BaseException("$pipename must return a BaseResponse object or string");
                }
                return $resp;
            };
        };
    }
 
    /**
     * Resolve middleware from a string definition.
     */
    protected function resolveMiddleware(string|array $pipe)
    {
        // Split the pipe string to extract class and parameters
        $parts = is_array($pipe) ? $pipe : explode(':', $pipe, 2);
        $pipeClass = $parts[0];
        $parameters = isset($parts[1]) ? explode(',', $parts[1]) : [];
Arguments
  1. Eyika\Atom\Framework\Http\Request {#158}
    
  2. Closure(Request $passable) {#125 …4}
    
/usr/home/basttyy/domains/api.sendmani.com/public_html/app/Http/Middlewares/TrimStrings.php
namespace App\Http\Middlewares;
 
use Closure;
use Eyika\Atom\Framework\Http\BaseResponse;
use Eyika\Atom\Framework\Http\Request;
use Eyika\Atom\Framework\Http\Contracts\MiddlewareInterface;
 
class TrimStrings implements MiddlewareInterface
{
    /**
     * Handle an incoming request.
     *
     * @param Request $request
     * @return mixed
     */
    public function handle(Request $request, Closure $next): BaseResponse
    {
        $this->clean($request);
 
        return $next($request);
    }
 
    /**
     * Clean the request's data by trimming whitespace.
     *
     * @param Request $request
     * @return void
     */
    protected function clean(Request $request)
    {
        $input = $request->input();
        $query = $request->query();
 
        $cleanedInput = $this->trimArray($input);
        $cleanedQuery = $this->trimArray($query);
 
        $request->replaceInput($cleanedInput);
        $request->replaceQuery($cleanedQuery);
    }
 
Arguments
  1. Eyika\Atom\Framework\Http\Request {#158}
    
/usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Pipeline.php
     * Get the callable that wraps middleware around the next handler.
     * Create the closure chain for the pipeline.
     *
     * @return callable
     */
    protected function carry(): callable
    {
        return function (Closure $next, string|array|callable $pipe): callable {
            return function (Request $passable) use ($next, $pipe) {
                if (is_string($pipe) || is_array($pipe)) {
                    // Resolve middleware class and parameters
                    [$pipeClass, $parameters] = $this->resolveMiddleware($pipe);
                    $pipe = is_callable($pipeClass) ? $pipeClass : new $pipeClass;
                } else {
                    $parameters = [];
                }
 
                // Call the middleware's handle method or invoke it
                $resp = method_exists($pipe, 'handle')
                    ? $pipe->handle($passable, $next, ...$parameters)
                    : $pipe($passable, $next);
 
                if (!$resp instanceof BaseResponse && !is_string($resp)) {
                    $pipename = getCallableName($pipe);
                    throw new BaseException("$pipename must return a BaseResponse object or string");
                }
                return $resp;
            };
        };
    }
 
    /**
     * Resolve middleware from a string definition.
     */
    protected function resolveMiddleware(string|array $pipe)
    {
        // Split the pipe string to extract class and parameters
        $parts = is_array($pipe) ? $pipe : explode(':', $pipe, 2);
        $pipeClass = $parts[0];
        $parameters = isset($parts[1]) ? explode(',', $parts[1]) : [];
Arguments
  1. Eyika\Atom\Framework\Http\Request {#158}
    
  2. Closure(Request $passable) {#124 …4}
    
/usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Middlewares/ValidatePostSize.php
use Eyika\Atom\Framework\Http\BaseResponse;
use Eyika\Atom\Framework\Http\Request;
use Eyika\Atom\Framework\Http\Contracts\MiddlewareInterface;
use Eyika\Atom\Framework\Http\Response;
use Eyika\Atom\Framework\Support\Facade\Response as FacadeResponse;
 
class ValidatePostSize implements MiddlewareInterface
{
    /**
     * Handle an incoming request.
     *
     */
    public function handle(Request $request, Closure $next): BaseResponse
    {
        // Check if the content length exceeds the post_max_size
        if ($this->isRequestTooLarge($request)) {
            return $this->handleRequestTooLarge($request);
        }
 
        return $next($request);
    }
 
    /**
     * Determine if the request size exceeds the post_max_size.
     *
     * @param Request $request
     * @return bool
     */
    protected function isRequestTooLarge(Request $request)
    {
        $postMaxSize = $this->getPostMaxSize();
        $contentLength = $request->server('CONTENT_LENGTH', 0);
 
        return $postMaxSize > 0 && $contentLength > $postMaxSize;
    }
 
    /**
     * Handle a request that is too large.
     *
     * @param Request $request
Arguments
  1. Eyika\Atom\Framework\Http\Request {#158}
    
/usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Pipeline.php
     * Get the callable that wraps middleware around the next handler.
     * Create the closure chain for the pipeline.
     *
     * @return callable
     */
    protected function carry(): callable
    {
        return function (Closure $next, string|array|callable $pipe): callable {
            return function (Request $passable) use ($next, $pipe) {
                if (is_string($pipe) || is_array($pipe)) {
                    // Resolve middleware class and parameters
                    [$pipeClass, $parameters] = $this->resolveMiddleware($pipe);
                    $pipe = is_callable($pipeClass) ? $pipeClass : new $pipeClass;
                } else {
                    $parameters = [];
                }
 
                // Call the middleware's handle method or invoke it
                $resp = method_exists($pipe, 'handle')
                    ? $pipe->handle($passable, $next, ...$parameters)
                    : $pipe($passable, $next);
 
                if (!$resp instanceof BaseResponse && !is_string($resp)) {
                    $pipename = getCallableName($pipe);
                    throw new BaseException("$pipename must return a BaseResponse object or string");
                }
                return $resp;
            };
        };
    }
 
    /**
     * Resolve middleware from a string definition.
     */
    protected function resolveMiddleware(string|array $pipe)
    {
        // Split the pipe string to extract class and parameters
        $parts = is_array($pipe) ? $pipe : explode(':', $pipe, 2);
        $pipeClass = $parts[0];
        $parameters = isset($parts[1]) ? explode(',', $parts[1]) : [];
Arguments
  1. Eyika\Atom\Framework\Http\Request {#158}
    
  2. Closure(Request $passable) {#123 …4}
    
/usr/home/basttyy/domains/api.sendmani.com/public_html/app/Http/Middlewares/PreventRequestsDuringMaintenance.php
    public function __construct(array $except = [])
    {
        $this->except = $except;
    }
 
    /**
     * Handle an incoming request.
     *
     */
    public function handle(Request $request, Closure $next): BaseResponse
    {
        // Check if the application is in maintenance mode
        if ($this->isDownForMaintenance()) {
            // If the request is not in the excepted URIs, block it
            if (!$this->inExceptArray($request)) {
                return $this->makeMaintenanceResponse();
            }
        }
 
        return $next($request);
    }
 
    /**
     * Determine if the application is in maintenance mode.
     *
     * @return bool
     */
    protected function isDownForMaintenance()
    {
        // In Laravel, this would typically check for a file like 'storage/framework/down'
        return file_exists(__DIR__ . '/storage/framework/maintainance.php');
    }
 
    /**
     * Determine if the request has a URI that should pass through maintenance mode.
     *
     * @param Request $request
     * @return bool
     */
    protected function inExceptArray(Request $request)
Arguments
  1. Eyika\Atom\Framework\Http\Request {#158}
    
/usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Pipeline.php
     * Get the callable that wraps middleware around the next handler.
     * Create the closure chain for the pipeline.
     *
     * @return callable
     */
    protected function carry(): callable
    {
        return function (Closure $next, string|array|callable $pipe): callable {
            return function (Request $passable) use ($next, $pipe) {
                if (is_string($pipe) || is_array($pipe)) {
                    // Resolve middleware class and parameters
                    [$pipeClass, $parameters] = $this->resolveMiddleware($pipe);
                    $pipe = is_callable($pipeClass) ? $pipeClass : new $pipeClass;
                } else {
                    $parameters = [];
                }
 
                // Call the middleware's handle method or invoke it
                $resp = method_exists($pipe, 'handle')
                    ? $pipe->handle($passable, $next, ...$parameters)
                    : $pipe($passable, $next);
 
                if (!$resp instanceof BaseResponse && !is_string($resp)) {
                    $pipename = getCallableName($pipe);
                    throw new BaseException("$pipename must return a BaseResponse object or string");
                }
                return $resp;
            };
        };
    }
 
    /**
     * Resolve middleware from a string definition.
     */
    protected function resolveMiddleware(string|array $pipe)
    {
        // Split the pipe string to extract class and parameters
        $parts = is_array($pipe) ? $pipe : explode(':', $pipe, 2);
        $pipeClass = $parts[0];
        $parameters = isset($parts[1]) ? explode(',', $parts[1]) : [];
Arguments
  1. Eyika\Atom\Framework\Http\Request {#158}
    
  2. Closure(Request $passable) {#122 …4}
    
/usr/home/basttyy/domains/api.sendmani.com/public_html/app/Http/Middlewares/TrustProxies.php
 
        // Default to X-Forwarded-For header
        $this->headers = $headers ?? (Request::HEADER_X_FORWARDED_FOR | Request::HEADER_X_FORWARDED_HOST | 
                                       Request::HEADER_X_FORWARDED_PORT | Request::HEADER_X_FORWARDED_PROTO);
    }
 
    /**
     * Handle an incoming request.
     *
     * @return mixed
     */
    public function handle(Request $request, Closure $next): BaseResponse
    {
        // Trust the proxies configured for this application
        $request->setTrustedProxies(
            $this->proxies ?? ['127.0.0.1', 'localhost'], // Default to localhost if no proxies set
            1
        );
 
        return $next($request);
    }
 
    /**
     * Set the trusted proxies for this application.
     *
     * @param  array|string|null  $proxies
     * @return $this
     */
    public function setProxies($proxies)
    {
        $this->proxies = $proxies;
 
        return $this;
    }
 
    /**
     * Set the headers that should be used to detect proxies.
     *
     * @param  int  $headers
     * @return $this
Arguments
  1. Eyika\Atom\Framework\Http\Request {#158}
    
/usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Pipeline.php
     * Get the callable that wraps middleware around the next handler.
     * Create the closure chain for the pipeline.
     *
     * @return callable
     */
    protected function carry(): callable
    {
        return function (Closure $next, string|array|callable $pipe): callable {
            return function (Request $passable) use ($next, $pipe) {
                if (is_string($pipe) || is_array($pipe)) {
                    // Resolve middleware class and parameters
                    [$pipeClass, $parameters] = $this->resolveMiddleware($pipe);
                    $pipe = is_callable($pipeClass) ? $pipeClass : new $pipeClass;
                } else {
                    $parameters = [];
                }
 
                // Call the middleware's handle method or invoke it
                $resp = method_exists($pipe, 'handle')
                    ? $pipe->handle($passable, $next, ...$parameters)
                    : $pipe($passable, $next);
 
                if (!$resp instanceof BaseResponse && !is_string($resp)) {
                    $pipename = getCallableName($pipe);
                    throw new BaseException("$pipename must return a BaseResponse object or string");
                }
                return $resp;
            };
        };
    }
 
    /**
     * Resolve middleware from a string definition.
     */
    protected function resolveMiddleware(string|array $pipe)
    {
        // Split the pipe string to extract class and parameters
        $parts = is_array($pipe) ? $pipe : explode(':', $pipe, 2);
        $pipeClass = $parts[0];
        $parameters = isset($parts[1]) ? explode(',', $parts[1]) : [];
Arguments
  1. Eyika\Atom\Framework\Http\Request {#158}
    
  2. Closure(Request $passable) {#121 …4}
    
/usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Pipeline.php
        return $this;
    }
 
    /**
     * Run the pipeline with the given passable object.
     * 
     * @return BaseResponse|string|bool
     */
    public function run($passable)
    {
        $this->passable = $passable;
 
        // Reduce the pipes to a single callable pipeline
        $pipeline = array_reduce(
            array_reverse($this->pipes),
            $this->carry(),
            $this->coreHandler
        );
 
        $resp = $pipeline($this->passable);
 
        return $resp;
    }
 
    /**
     * Get the callable that wraps middleware around the next handler.
     * Create the closure chain for the pipeline.
     *
     * @return callable
     */
    protected function carry(): callable
    {
        return function (Closure $next, string|array|callable $pipe): callable {
            return function (Request $passable) use ($next, $pipe) {
                if (is_string($pipe) || is_array($pipe)) {
                    // Resolve middleware class and parameters
                    [$pipeClass, $parameters] = $this->resolveMiddleware($pipe);
                    $pipe = is_callable($pipeClass) ? $pipeClass : new $pipeClass;
                } else {
                    $parameters = [];
Arguments
  1. Eyika\Atom\Framework\Http\Request {#158}
    
/usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Route.php
        $middlewares = array_merge(
            static::$defaultMiddlewares,
            static::findRouteMiddlewares($requestMethod, $requestUri)
        );
    
        // Core handler for the pipeline
        $coreHandler = function ($request) use ($routeMatched, $requestMethod, $requestUri) {
            // If no route matches, set up a 404 handler
            if (!$routeMatched) {
                return self::handleNotFound($request)->send();
            }
            $callback = self::$routes[$requestMethod][self::$currentRoute]['callback'];
            return self::executeCallback($callback, $request, $request->route_params ?? []);
        };
    
        // Run the pipeline
        $response = (new Pipeline())
            ->through($middlewares)
            ->then($coreHandler)
            ->run($request);
    
        // Output the response
        if ($response instanceof BaseResponse)
            return $response->send();
        elseif (is_string($response)) {
            echo $response;
            return true;
        } else return true;
    }
 
    public static function route($name, $parameters = [])
    {
        foreach (self::$routes as $method => $routes) {
            foreach ($routes as $route => $data) {
                if ($data['name'] === $name) {
                    foreach ($parameters as $key => $value) {
                        $route = str_replace('$' . $key, $value, $route);
                    }
                    return empty($route) ? '/' : $route;
                }
Arguments
  1. Eyika\Atom\Framework\Http\Request {#158}
    
/usr/home/basttyy/domains/api.sendmani.com/public_html/vendor/eyika/atom-framework/src/Http/Server.php
 
    public static function handle(): bool
    {
        try {
            // ErrorHandler::register();
            $request = static::$app->make('request');
            static::$app->instance('request', $request);
            if (preg_match('/^.*$/i', $request->requestUri())) {
                //register controllers
                if (!str_contains($request->pathInfo(), '/api') && !$request->wantsJson() && !$request->isXmlHttpRequest() && !$request->isOptions()) {
                    static::loadMiddlewares('web');
                    ///TODO: load all default web middlewares
                    require_once base_path().'/routes/web.php';
                } else {
                    Route::isApiRequest(true);
                    static::loadMiddlewares('api');
                    ///TODO: load all default api middlewares
                    require_once base_path().'/routes/api.php';
                }
                $status = Route::dispatch($request);
                if (!$request->isAssetRequest())
                    Route::storeCurrent();
 
                return $status;
            } else {
                return false; // Let php bultin server serve
            }
        } catch (Throwable $e) {
            /** @var ExceptionHandler $handler */
            $handler = static::$app->make(ExceptionHandler::class);
 
            return $handler->render($request, $e)->send();
        }
    }
 
    private static function loadMiddlewares(string $type)
    {
        /** @var Kernel $kernel */
        $kernel = static::$app->make(Kernel::class);
 
Arguments
  1. Eyika\Atom\Framework\Http\Request {#158}
    
/usr/home/basttyy/domains/api.sendmani.com/public_html/public/index.php
|
*/
require_once __DIR__."/../vendor/eyika/atom-framework/src/helpers.php";
 
/*
|--------------------------------------------------------------------------
| Run The Application
|--------------------------------------------------------------------------
|
| Once we have the application, we can handle the incoming request using
| the application's HTTP kernel. Then, we will send the response back
| to this client's browser, allowing them to enjoy our application.
|
*/
 
try {
    $app = require_once __DIR__.'/../bootstrap/app.php';
 
    $server = new Server($app);
    $server->handle();
} catch (\Exception $e) {
    echo $e->getMessage();
}
 

Environment & details:

empty
empty
empty
Key Value
PHPSESSID
"eded26ed7edc30321eba6c67d2002c51"
empty
Key Value
HOME
"/home/basttyy"
USER
"basttyy"
PATH
"/bin:/usr/bin:/usr/local/bin"
HTTP_COOKIE
"PHPSESSID=eded26ed7edc30321eba6c67d2002c51"
HTTP_ACCEPT_ENCODING
"gzip, br, zstd, deflate"
HTTP_USER_AGENT
"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"
HTTP_ACCEPT
"*/*"
HTTP_CONNECTION
"close"
HTTP_X_DCACHE
"YES"
HTTP_HOST
"www.api.sendmani.com"
HTTPS
"on"
REDIRECT_STATUS
"200"
GEOIP_COUNTRY_CODE
"US"
PATH_INFO
""
SERVER_USER
"basttyy"
SERVER_DOMAIN
"api.sendmani.com"
SERVER_NAME
"www.api.sendmani.com"
SERVER_PORT
"443"
SERVER_ADDR
"128.204.223.70"
REMOTE_PORT
""
REMOTE_ADDR
"216.73.216.87"
SERVER_SOFTWARE
"Apache/N-G-I-N-X-htaccess-support"
GATEWAY_INTERFACE
"CGI/1.1"
SERVER_PROTOCOL
"HTTP/1.1"
DOCUMENT_ROOT
"/usr/home/basttyy/domains/api.sendmani.com/public_html"
DOCUMENT_URI
"/sitemap.xml"
REQUEST_URI
"/sitemap.xml"
SCRIPT_NAME
"/public/index.php"
CONTENT_LENGTH
""
CONTENT_TYPE
""
REQUEST_METHOD
"GET"
QUERY_STRING
""
SCRIPT_FILENAME
"/usr/home/basttyy/domains/api.sendmani.com/public_html/public/index.php"
FCGI_ROLE
"RESPONDER"
PHP_SELF
"/public/index.php"
REQUEST_TIME_FLOAT
1765796847.9997
REQUEST_TIME
1765796847
APP_NAME
"Sendmani"
APP_ENV
"prod"
APP_KEY
"base64:bkkwa1FSaUIyV3h4NTJuZk5UVWxaVUpjUTdzaW5DWlI="
APP_DEBUG
"false"
APP_URL
"https://api.sendmani.com/"
FILESYSTEM_DISK
"public"
LOG_CHANNEL
"stack"
LOG_LEVEL
"debug"
DB_ADAPTER
"mysql"
DB_CONNECTION
"mysql"
DB_HOST
"mysql3.serv00.com"
DB_PORT
"3306"
DB_DATABASE
"m5590_prod"
DB_USERNAME
"m5590_devops1"
DB_PASSWORD
"zGyjK+yGNaDZIRNwa5eIVD+Q~";794"
CACHE_DRIVER
"database"
QUEUE_CONNECTION
"database"
SESSION_DRIVER
"database"
SESSION_LIFETIME
"120"
REDIS_HOST
"127.0.0.1"
REDIS_PASSWORD
"null"
REDIS_PORT
"6379"
MAIL_DRIVER
"smtp"
MAIL_MAILER
"smtp_noreply"
MAIL_HOST
"mail3.serv00.com"
MAIL_PORT
"465"
MAIL_ENCRYPTION
"ssl"
SUPPORT_EMAIL_USER
"support@sendmani.com"
SUPPORT_EMAIL_PASSWORD
"Wq[=5e_'HM[$okX"
SUPPORT_EMAIL_NAME
"Mani Support"
NOREPLY_EMAIL_PASSWORD
"US84Z5Ea2mv@V"wLQ3'zTCl6jU_i_w"
NOREPLY_EMAIL_USER
"noreply@sendmani.com"
NOREPLY_EMAIL_NAME
"Mani Noreply"
SEND_EMAIL_ON_LOCAL
"true"
AWS_ACCESS_KEY_ID
"eNfzC202iQ67xMBa8M0l"
AWS_SECRET_ACCESS_KEY
"SutM2Du7SDpGaYHgzYnajpPdYQXWDN4mETAJOiYB"
AWS_DEFAULT_REGION
"Paris"
AWS_BUCKET
"mani"
AWS_URL
""
AWS_ENDPOINT
"p1m9.par01.idrivee2-68.com"
MEDIA_DISK
"public"
COOKIE_CONSENT_ENABLED
"true"
LOGVIEWER_PATTERN
"*.log"
ADMIN_APP_URL
"https://api.sendmani.com/"
USER_APP_URL
"https://sendmani.com"
MOBILE_APP_URL
"https://sendmani.com"
JWT_KEY
"base64:QlJNV2ZhYU1xN04yTXBKWmswclMxQVNVYjRCY0lrcGE="
JWT_ISS
"http://www.sendmani.com"
JWT_AUD
"http://www.sendmani.com"
TEST_USER_NAME
"admin"
TEST_USER
"admin@mani.test"
TEST_PASS
"123456789"
FINGERPRINT_MAX_AGE
"15"
SECRET_TOKEN
"sklfehfuehfuwh783r723f2feuenen"
SHA_TYPE
"sha256"
EMAIL2FA_MAX_AGE
"900"
CONTENT_LENGTH_MIN
"8"
CHRON_INTERVAL
"60"
OAUTH_CALLBACK
"/auth/login"
FB_APP_ID
"628966102602835"
FB_APP_SECRET
"d5de672b325e0b4fc94493cd0000f27a"
GOOGLE_APP_ID
""
GOOGLE_APP_SECRET
""
TWITTER_APP_ID
""
TWITTER_APP_SECRET
""
CYPTO_PROVIDER_BASE_URL
"https://api.paycrest.io/v1/"
CRYPTO_API_KEY
"17946ac3-adb1-4640-9bf0-94f5d4c9688b"
CRYPTO_SECRET_KEY
"9f_PiRhmyl_hhmvpYPkLdkba0G3TanLIhfIX3TSV6TQ="
IPLOC_API_KEY
"78CE389F5BC314977F3C6A97E5C38B32"
DOLLAR_PER_POINT
"0.01"
POINTS_PER_REFERRAL
"1"
MANI_DEVOPS_TOKEN
"6c40b1b0b78865d692400b8aa6837fdb"
Key Value
APP_NAME
"Sendmani"
APP_ENV
"prod"
APP_KEY
"base64:bkkwa1FSaUIyV3h4NTJuZk5UVWxaVUpjUTdzaW5DWlI="
APP_DEBUG
"false"
APP_URL
"https://api.sendmani.com/"
FILESYSTEM_DISK
"public"
LOG_CHANNEL
"stack"
LOG_LEVEL
"debug"
DB_ADAPTER
"mysql"
DB_CONNECTION
"mysql"
DB_HOST
"mysql3.serv00.com"
DB_PORT
"3306"
DB_DATABASE
"m5590_prod"
DB_USERNAME
"m5590_devops1"
DB_PASSWORD
"zGyjK+yGNaDZIRNwa5eIVD+Q~";794"
CACHE_DRIVER
"database"
QUEUE_CONNECTION
"database"
SESSION_DRIVER
"database"
SESSION_LIFETIME
"120"
REDIS_HOST
"127.0.0.1"
REDIS_PASSWORD
"null"
REDIS_PORT
"6379"
MAIL_DRIVER
"smtp"
MAIL_MAILER
"smtp_noreply"
MAIL_HOST
"mail3.serv00.com"
MAIL_PORT
"465"
MAIL_ENCRYPTION
"ssl"
SUPPORT_EMAIL_USER
"support@sendmani.com"
SUPPORT_EMAIL_PASSWORD
"Wq[=5e_'HM[$okX"
SUPPORT_EMAIL_NAME
"Mani Support"
NOREPLY_EMAIL_PASSWORD
"US84Z5Ea2mv@V"wLQ3'zTCl6jU_i_w"
NOREPLY_EMAIL_USER
"noreply@sendmani.com"
NOREPLY_EMAIL_NAME
"Mani Noreply"
SEND_EMAIL_ON_LOCAL
"true"
AWS_ACCESS_KEY_ID
"eNfzC202iQ67xMBa8M0l"
AWS_SECRET_ACCESS_KEY
"SutM2Du7SDpGaYHgzYnajpPdYQXWDN4mETAJOiYB"
AWS_DEFAULT_REGION
"Paris"
AWS_BUCKET
"mani"
AWS_URL
""
AWS_ENDPOINT
"p1m9.par01.idrivee2-68.com"
MEDIA_DISK
"public"
COOKIE_CONSENT_ENABLED
"true"
LOGVIEWER_PATTERN
"*.log"
ADMIN_APP_URL
"https://api.sendmani.com/"
USER_APP_URL
"https://sendmani.com"
MOBILE_APP_URL
"https://sendmani.com"
JWT_KEY
"base64:QlJNV2ZhYU1xN04yTXBKWmswclMxQVNVYjRCY0lrcGE="
JWT_ISS
"http://www.sendmani.com"
JWT_AUD
"http://www.sendmani.com"
TEST_USER_NAME
"admin"
TEST_USER
"admin@mani.test"
TEST_PASS
"123456789"
FINGERPRINT_MAX_AGE
"15"
SECRET_TOKEN
"sklfehfuehfuwh783r723f2feuenen"
SHA_TYPE
"sha256"
EMAIL2FA_MAX_AGE
"900"
CONTENT_LENGTH_MIN
"8"
CHRON_INTERVAL
"60"
OAUTH_CALLBACK
"/auth/login"
FB_APP_ID
"628966102602835"
FB_APP_SECRET
"d5de672b325e0b4fc94493cd0000f27a"
GOOGLE_APP_ID
""
GOOGLE_APP_SECRET
""
TWITTER_APP_ID
""
TWITTER_APP_SECRET
""
CYPTO_PROVIDER_BASE_URL
"https://api.paycrest.io/v1/"
CRYPTO_API_KEY
"17946ac3-adb1-4640-9bf0-94f5d4c9688b"
CRYPTO_SECRET_KEY
"9f_PiRhmyl_hhmvpYPkLdkba0G3TanLIhfIX3TSV6TQ="
IPLOC_API_KEY
"78CE389F5BC314977F3C6A97E5C38B32"
DOLLAR_PER_POINT
"0.01"
POINTS_PER_REFERRAL
"1"
MANI_DEVOPS_TOKEN
"6c40b1b0b78865d692400b8aa6837fdb"
0. Whoops\Handler\PrettyPageHandler