diff --git a/generator/internal/rust/templates/crate/src/lib.rs.mustache b/generator/internal/rust/templates/crate/src/lib.rs.mustache
index 556a835af..66f20a0a0 100644
--- a/generator/internal/rust/templates/crate/src/lib.rs.mustache
+++ b/generator/internal/rust/templates/crate/src/lib.rs.mustache
@@ -37,7 +37,8 @@ limitations under the License.
 pub mod model;
 
 {{#HasServices}}
-pub(crate) use gax::Result;
+pub use gax::Result;
+pub use gax::error::Error;
 
 {{! Google APIs often use angle brackets for <PLACEHOLDERS>, rustdoc does not like those. }}
 #[allow(rustdoc::invalid_html_tags)]
diff --git a/src/gax/src/lib.rs b/src/gax/src/lib.rs
index 9de09062e..2cb6f8b9b 100644
--- a/src/gax/src/lib.rs
+++ b/src/gax/src/lib.rs
@@ -30,7 +30,7 @@
 //! change both if needed.
 //! </div>
 
-/// An alias of [std::result::Result] where the error is always [crate::error::Error].
+/// An alias of [std::result::Result] where the error is always [Error][crate::error::Error].
 ///
 /// This is the result type used by all functions wrapping RPCs.
 pub type Result<T> = std::result::Result<T, crate::error::Error>;