public function get_documents()
    {
        $this->validate_query_key();

        $objDocuments = $this
            ->set_per_page()
            ->set_page()
            ->set_facets()
            ->set_filter()
            ->set_exclude_filter()
            ->set_sorting()
            ->set_spellcheck()
            ->set_highlights()
            ->set_result_fields()
            ->get();

        $objDocuments->matches = $this->parse_documents($objDocuments->matches);
        return $objDocuments;
    }