public static function getById(int $id): ?Endpoint
    {
        // Get a reference to the type of Endpoint calling this function.
        $class = get_called_class();

        // Instantiate an AnnotationReader for this class AND check for the important parameters.
        $annotations = new AnnotationReader($class);
        $endpoints = $annotations->getClassAnnotation("endpoints");

        // Make certain we have found a valid set of GET annotations, or throw an error!
        if(!array_key_exists("getById", $endpoints))
            throw new \Exception("[MVQN\REST\Endpoints\Endpoint] An '@EndpointAnnotation { \"getById\": \"/examples/:id\" }' annotation on ".
                "the '$class' class must be declared in order to resolve this endpoint'");

        // Interpolate the URL patterns against any provided parameters.
        $endpoint = Patterns::interpolateUrl($endpoints["getById"], [ "id" => $id ]);

        // Attempt to GET the specified Endpoint.
        $response = RestClient::get($endpoint);

        // IF the response is empty...
        if($response === [])
            // THEN return NULL, as we got nothing back!
            return null;

        // HANDLE ANY ERROR CODES HERE...
        if(array_key_exists("code", $response))
        {
            switch($response["code"])
            {
                case 401: throw new \Exception("[MVQN\REST\Endpoints\Endpoint] The REST Client was not authorized to make this request!");
                case 403: throw new \Exception("[MVQN\REST\Endpoints\Endpoint] The provided App Key does not have sufficient privileges!");
                case 404: throw new \Exception("[MVQN\REST\Endpoints\Endpoint] Endpoint '$endpoint' was not found for class '$class'!");

                // TODO: Add other response codes, as they are encountered!

                default:  break; // Likely the key "code" from an actual Endpoint!
            }
        }

        // Finally, return the instantiated Endpoint!
        return new $class($response);
    }