diff --git a/CakeMail.RestClient/CakeMail.RestClient.csproj b/CakeMail.RestClient/CakeMail.RestClient.csproj index e7f822c..5abb37a 100644 --- a/CakeMail.RestClient/CakeMail.RestClient.csproj +++ b/CakeMail.RestClient/CakeMail.RestClient.csproj @@ -53,6 +53,7 @@ + diff --git a/CakeMail.RestClient/CakeMailRestClient.cs b/CakeMail.RestClient/CakeMailRestClient.cs index 4969fee..bc8c395 100644 --- a/CakeMail.RestClient/CakeMailRestClient.cs +++ b/CakeMail.RestClient/CakeMailRestClient.cs @@ -15,7 +15,7 @@ namespace CakeMail.RestClient /// /// Core class for using the CakeMail Api /// - public class CakeMailRestClient + public class CakeMailRestClient : ICakeMailRestClient { #region Fields diff --git a/CakeMail.RestClient/ICakeMailRestClient.cs b/CakeMail.RestClient/ICakeMailRestClient.cs new file mode 100644 index 0000000..8412833 --- /dev/null +++ b/CakeMail.RestClient/ICakeMailRestClient.cs @@ -0,0 +1,53 @@ +using CakeMail.RestClient.Models; +using CakeMail.RestClient.Resources; +using System; +using System.Collections.Generic; +using System.Net; + +namespace CakeMail.RestClient +{ + /// + /// Provides the base interface for implementation of access to the CakeMail API + /// + interface ICakeMailRestClient + { + /// + /// The API key provided by CakeMail + /// + string ApiKey { get; } + + /// + /// The web proxy + /// + IWebProxy Proxy { get; } + + /// + /// The user agent + /// + string UserAgent { get; } + + /// + /// The timeout + /// + int Timeout { get; } + + /// + /// The URL where all API requests are sent + /// + Uri BaseUrl { get; } + + Campaigns Campaigns { get; } + Clients Clients { get; } + Countries Countries { get; } + Permissions Permissions { get; } + Lists Lists { get; } + Timezones Timezones { get; } + Mailings Mailings { get; } + Relays Relays { get; } + Segments Segments { get; } + Users Users { get; } + SuppressionLists SuppressionLists { get; } + Templates Templates { get; } + Triggers Triggers { get; } + } +} \ No newline at end of file