@@ -16,7 +16,7 @@ public abstract class BaseClient
1616 protected IRequestSender Sender { get ; }
1717
1818 /// <summary>
19- /// Initialize a new instance of <see cref="SynchronousBaseClient "/>.
19+ /// Initialize a new instance of <see cref="BaseClient "/>.
2020 /// </summary>
2121 /// <param name="sender">Class used to send <see cref="HttpRequestMessage"/>.</param>
2222 /// <param name="url">Base URL of api (ex: https://myapi.com/).</param>
@@ -34,8 +34,8 @@ protected BaseClient(IRequestSender sender, string url)
3434 /// </summary>
3535 /// <param name="route">Request's Route.</param>
3636 /// <param name="method">Request's Method (GET, POST, PUT, DELETE...).</param>
37- protected virtual IRequestBuilder GetBuilder ( string route , Method method = Method . Get )
38- => new RequestBuilder ( _url , route , method ) ;
37+ protected virtual IRequestBuilder GetBuilder ( string route , Method method = Method . Get , string ? version = null )
38+ => new RequestBuilder ( _url , route , version , method ) ;
3939
4040 /// <summary>
4141 /// Get preconfigured <see cref="IRequestBuilder"/>.
@@ -44,19 +44,33 @@ protected virtual IRequestBuilder GetBuilder(string route, Method method = Metho
4444 protected IRequestBuilder GetBuilder ( Endpoint endpoint )
4545 => GetBuilder ( endpoint . Route , endpoint . Method ) ;
4646
47+ /// <summary>
48+ /// Get preconfigured <see cref="IRequestBuilder"/> with versioning.
49+ /// </summary>
50+ /// <param name="endpoint">Request's <see cref="Endpoint"/>.</param>
51+ protected IRequestBuilder GetBuilder ( VersionedEndpoint endpoint )
52+ => GetBuilder ( endpoint . Route , endpoint . Method , endpoint . Version ) ;
53+
4754 /// <summary>
4855 /// Get preconfigured <see cref="IRequestBuilder"/>.
4956 /// </summary>
5057 /// <param name="route">Request's Route.</param>
5158 /// <param name="method">Request's Method (GET, POST, PUT, DELETE...).</param>
52- protected virtual async Task < IRequestBuilder > GetBuilderAsync ( string route , Method method = Method . Get )
53- => new RequestBuilder ( _url , route , method ) ;
59+ protected virtual async Task < IRequestBuilder > GetBuilderAsync ( string route , Method method = Method . Get , string ? version = null )
60+ => GetBuilder ( route , method , version ) ;
5461
5562 /// <summary>
5663 /// Get preconfigured <see cref="IRequestBuilder"/>.
5764 /// </summary>
5865 /// <param name="endpoint">Request's <see cref="Endpoint"/>.</param>
5966 protected Task < IRequestBuilder > GetBuilderAsync ( Endpoint endpoint )
6067 => GetBuilderAsync ( endpoint . Route , endpoint . Method ) ;
68+
69+ /// <summary>
70+ /// Get preconfigured <see cref="IRequestBuilder"/> with versioning.
71+ /// </summary>
72+ /// <param name="endpoint">Request's <see cref="VersionedEndpoint"/>.</param>
73+ protected Task < IRequestBuilder > GetBuilderAsync ( VersionedEndpoint endpoint )
74+ => GetBuilderAsync ( endpoint . Route , endpoint . Method , endpoint . Version ) ;
6175 }
6276}
0 commit comments