Skip to content

ClickSend/clicksend-csharp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

84 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IO.ClickSend - the C# library for the ClickSend v3 API

This is an official SDK for ClickSend Below you will find a current list of the available methods for clicksend. NOTE: You will need to create a free account to use the API. You can register here..

This C# SDK is automatically generated by the ClickSend Codegen project:

  • API version: 3.1
  • SDK version: 1.0.0
  • Build package: io.swagger.codegen.v3.generators.dotnet.CSharpClientCodegen

Frameworks supported

  • .NET 4.0 or later
  • Windows Phone 7.1 (Mango)

Dependencies

The DLLs included in the package may not be the latest version. We recommend using NuGet to obtain the latest version of the packages:

Install-Package RestSharp
Install-Package Newtonsoft.Json
Install-Package JsonSubTypes

NOTE: RestSharp versions greater than 105.1.0 have a bug which causes file uploads to fail. See RestSharp#742

Installation

Run the following command to generate the DLL

  • [Mac/Linux] /bin/sh build.sh
  • [Windows] build.bat

Then include the DLL (under the bin folder) in the C# project, and use the namespaces:

using IO.ClickSend.ClickSend.Api;
using IO.ClickSend.Client;
using IO.ClickSend.ClickSend.Model;

Packaging

A .nuspec is included with the project. You can follow the Nuget quickstart to create and publish packages.

This .nuspec uses placeholders from the .csproj, so build the .csproj directly:

nuget pack -Build -OutputDirectory out IO.ClickSend.csproj

Then, publish to a local feed or other host and consume the new package via Nuget as usual.

Getting Started

using System;
using System.Diagnostics;
using IO.ClickSend.ClickSend.Api;
using IO.ClickSend.Client;
using IO.ClickSend.ClickSend.Model;

namespace Example
{
    public class Example
    {
        public void main()
        {
            // Configure HTTP basic authorization: BasicAuth
            Configuration.Default.Username = "YOUR_USERNAME";
            Configuration.Default.Password = "YOUR_PASSWORD";

            var apiInstance = new AccountApi();

            try
            {
                // Get account information
                string result = apiInstance.AccountGet();
                Debug.WriteLine(result);
            }
            catch (Exception e)
            {
                Debug.Print("Exception when calling AccountApi.AccountGet: " + e.Message );
            }
        }
    }
}

Documentation for API Endpoints

All URIs are relative to https://rest.clicksend.com/v3

Class Method HTTP request Description
AccountApi AccountGet GET /account Get account information
AccountApi AccountPost POST /account Create a new account
AccountApi AccountUseageBySubaccountGet GET /account/usage/{year}/{month}/subaccount Get account useage by subaccount
AccountApi AccountVerifySendPut PUT /account-verify/send Send account activation token
AccountApi AccountVerifyVerifyByActivationTokenPut PUT /account-verify/verify/{activation_token} Verify new account
AccountApi ForgotPasswordPut PUT /forgot-password Forgot password
AccountApi ForgotPasswordVerifyPut PUT /forgot-password/verify Verify forgot password
AccountApi ForgotUsernamePut PUT /forgot-username Forgot username
AccountRechargeApi RechargeCreditCardGet GET /recharge/credit-card Get Credit Card info
AccountRechargeApi RechargeCreditCardPut PUT /recharge/credit-card Update credit card info
AccountRechargeApi RechargePackagesGet GET /recharge/packages Get list of all packages
AccountRechargeApi RechargePurchaseByPackageIdPut PUT /recharge/purchase/{package_id} Purchase a package
AccountRechargeApi RechargeTransactionsByTransactionIdGet GET /recharge/transactions/{transaction_id} Get specific Transaction
AccountRechargeApi RechargeTransactionsGet GET /recharge/transactions Purchase a package
ContactApi ListsContactsByListIdAndContactIdDelete DELETE /lists/{list_id}/contacts/{contact_id} Delete a contact
ContactApi ListsContactsByListIdAndContactIdGet GET /lists/{list_id}/contacts/{contact_id} Get a specific contact
ContactApi ListsContactsByListIdAndContactIdPut PUT /lists/{list_id}/contacts/{contact_id} Update specific contact
ContactApi ListsContactsByListIdGet GET /lists/{list_id}/contacts Get all contacts in a list
ContactApi ListsContactsByListIdPost POST /lists/{list_id}/contacts Create new contact
ContactApi ListsCopyContactPut PUT /lists/{from_list_id}/contacts/{contact_id}/copy/{to_list_id} Copy contact to another list
ContactApi ListsRemoveOptedOutContactsByListIdAndOptOutListIdPut PUT /lists/{list_id}/remove-opted-out-contacts/{opt_out_list_id} Remove all opted out contacts
ContactApi ListsTransferContactPut PUT /lists/{from_list_id}/contacts/{contact_id}/transfer/{to_list_id} Transfer contact to another list
ContactListApi ListsByListIdDelete DELETE /lists/{list_id} ListsByListIdDelete
ContactListApi ListsByListIdGet GET /lists/{list_id} Get specific contact list
ContactListApi ListsByListIdPut PUT /lists/{list_id} Update specific contact list
ContactListApi ListsGet GET /lists Get all contact lists
ContactListApi ListsImportByListIdPost POST /lists/{list_id}/import Import contacts to list
ContactListApi ListsPost POST /lists Create new contact list
ContactListApi ListsRemoveDuplicatesByListIdPut PUT /lists/{list_id}/remove-duplicates Remove duplicate contacts
CountriesApi CountriesGet GET /countries Get all country codes
DeliveryIssuesApi DeliveryIssuesGet GET /delivery-issues Get all delivery issues
DeliveryIssuesApi DeliveryIssuesPost POST /delivery-issues Create delivery Issue
DetectAddressApi DetectAddressPost POST /post/letters/detect-address Detects address in uploaded file.
EmailDeliveryReceiptRulesApi EmailDeliveryReceiptAutomationDelete DELETE /automations/email/receipts/{receipt_rule_id} Delete email delivery receipt automation
EmailDeliveryReceiptRulesApi EmailDeliveryReceiptAutomationGet GET /automations/email/receipts/{receipt_rule_id} Get specific email delivery receipt automation
EmailDeliveryReceiptRulesApi EmailDeliveryReceiptAutomationPost POST /automations/email/receipts Create email delivery receipt automations
EmailDeliveryReceiptRulesApi EmailDeliveryReceiptAutomationPut PUT /automations/email/receipts/{receipt_rule_id} Update email delivery receipt automation
EmailDeliveryReceiptRulesApi EmailDeliveryReceiptAutomationsGet GET /automations/email/receipts Get all email delivery receipt automations
EmailMarketingApi AllowedEmailAddressGet GET /email/addresses Get all email addresses
EmailMarketingApi AllowedEmailAddressPost POST /email/addresses Create allowed Email Address
EmailMarketingApi CancelEmailCampaignPut PUT /email-campaigns/{email_campaign_id}/cancel Cancel email campaign
EmailMarketingApi EmailCampaignGet GET /email-campaigns/{email_campaign_id} Get specific email campaign
EmailMarketingApi EmailCampaignHistoryExportGet GET /email-campaigns/{email_campaign_id}/history/export Export specific email campaign history
EmailMarketingApi EmailCampaignHistoryGet GET /email-campaigns/{email_campaign_id}/history Get specific email campaign history
EmailMarketingApi EmailCampaignPost POST /email-campaigns/send Send email campaign
EmailMarketingApi EmailCampaignPricePost POST /email-campaigns/price Calculate email campaign price
EmailMarketingApi EmailCampaignPut PUT /email-campaigns/{email_campaign_id} Edit email campaign
EmailMarketingApi EmailCampaignsGet GET /email-campaigns Get all email campaigns
EmailMarketingApi SendVerificationTokenGet PUT /email/address-verify/{email_address_id}/send Send verification token
EmailMarketingApi SpecificAllowedEmailAddressDelete DELETE /email/addresses/{email_address_id} Delete specific email address
EmailMarketingApi SpecificAllowedEmailAddressGet GET /email/addresses/{email_address_id} Get specific email address
EmailMarketingApi VerifyAllowedEmailAddressGet PUT /email/address-verify/{email_address_id}/verify/{activation_token} Verify email address using verification token
EmailToSmsApi SmsEmailSmsGet GET /sms/email-sms Get list of email to sms allowed addresses
EmailToSmsApi SmsEmailSmsPost POST /sms/email-sms Create email to sms allowed address
EmailToSmsApi SmsEmailSmsStrippedStringDelete DELETE /sms/email-sms-stripped-strings/{rule_id} Delete email to sms stripped string rule
EmailToSmsApi SmsEmailSmsStrippedStringGet GET /sms/email-sms-stripped-strings/{rule_id} Get email to sms stripped string rule
EmailToSmsApi SmsEmailSmsStrippedStringPost POST /sms/email-sms-stripped-strings Create email to sms stripped string rule
EmailToSmsApi SmsEmailSmsStrippedStringPut PUT /sms/email-sms-stripped-strings/{rule_id} Update email to sms stripped string rule
EmailToSmsApi SmsEmailSmsStrippedStringsGet GET /sms/email-sms-stripped-strings Get list of email to sms stripped string rules
FAXApi FaxHistoryGet GET /fax/history Get a list of Fax History.
FAXApi FaxPricePost POST /fax/price Calculate Total Price for Fax Messages sent
FAXApi FaxReceiptsByMessageIdGet GET /fax/receipts/{message_id} Get a single fax receipt based on message id.
FAXApi FaxReceiptsGet GET /fax/receipts Get all delivery receipts
FAXApi FaxReceiptsPost POST /fax/receipts Add a delivery receipt
FAXApi FaxReceiptsReadPut PUT /fax/receipts-read Mark delivery receipts as read
FAXApi FaxSendPost POST /fax/send Send a fax using supplied supported file-types.
FAXDeliveryReceiptRulesApi FaxDeliveryReceiptAutomationDelete DELETE /automations/fax/receipts/{receipt_rule_id} Delete fax delivery receipt automation
FAXDeliveryReceiptRulesApi FaxDeliveryReceiptAutomationGet GET /automations/fax/receipts/{receipt_rule_id} Get specific fax delivery receipt automation
FAXDeliveryReceiptRulesApi FaxDeliveryReceiptAutomationPost POST /automations/fax/receipts Create fax delivery receipt automations
FAXDeliveryReceiptRulesApi FaxDeliveryReceiptAutomationPut PUT /automations/fax/receipts/{receipt_rule_id} Update fax delivery receipt automation
FAXDeliveryReceiptRulesApi FaxDeliveryReceiptAutomationsGet GET /automations/fax/receipts Get all fax delivery receipt automations
GlobalSendingApi ListCountriesGet GET /country-list List of countries
GlobalSendingApi UserCountriesAgreePost POST /user-countries/agree Agree to rules and regulation
GlobalSendingApi UserCountriesGet GET /user-countries Get Countries for Global Sending
GlobalSendingApi UserCountriesPost POST /user-countries Select Countries for Global Sending
InboundFAXRulesApi FaxInboundAutomationDelete DELETE /automations/fax/inbound/{inbound_rule_id} Delete inbound fax automation
InboundFAXRulesApi FaxInboundAutomationGet GET /automations/fax/inbound/{inbound_rule_id} Get specific inbound fax automation
InboundFAXRulesApi FaxInboundAutomationPost POST /automations/fax/inbound Create new inbound fax automation
InboundFAXRulesApi FaxInboundAutomationPut PUT /automations/fax/inbound/{inbound_rule_id} Update inbound fax automation
InboundFAXRulesApi FaxInboundAutomationsGet GET /automations/fax/inbound Get all inbound fax automations
InboundSMSRulesApi SmsInboundAutomationDelete DELETE /automations/sms/inbound/{inbound_rule_id} Delete inbound sms automation
InboundSMSRulesApi SmsInboundAutomationGet GET /automations/sms/inbound/{inbound_rule_id} Get specific inbound sms automation
InboundSMSRulesApi SmsInboundAutomationPost POST /automations/sms/inbound Create new inbound sms automation
InboundSMSRulesApi SmsInboundAutomationPut PUT /automations/sms/inbound/{inbound_rule_id} Update inbound sms automation
InboundSMSRulesApi SmsInboundAutomationsGet GET /automations/sms/inbound Get all inbound sms automations
MMSApi MmsHistoryExportGet GET /mms/history/export Export all mms history
MMSApi MmsHistoryGet GET /mms/history Get all mms history
MMSApi MmsPricePost POST /mms/price Get Price for MMS sent
MMSApi MmsReceiptsGet GET /mms/receipts Get all delivery receipts
MMSApi MmsReceiptsReadPut PUT /mms/receipts-read Mark delivery receipts as read
MMSApi MmsSendPost POST /mms/send Send MMS
MasterEmailTemplatesApi MasterEmailTemplateCategoriesGet GET /email/master-templates-categories Get all master email template categories
MasterEmailTemplatesApi MasterEmailTemplateCategoryGet GET /email/master-templates-categories/{category_id} Get specific master email template category
MasterEmailTemplatesApi MasterEmailTemplateGet GET /email/master-templates/{template_id} Get specific master email template
MasterEmailTemplatesApi MasterEmailTemplatesGet GET /email/master-templates Get all master email templates
MasterEmailTemplatesApi MasterEmailTemplatesInCategoryGet GET /email/master-templates-categories/{category_id}/master-templates Get all master email templates in a category
MmsCampaignApi MmsCampaignByMmsCampaignIdGet GET /mms-campaigns/{mms_campaign_id} Get specific mms campaign
MmsCampaignApi MmsCampaignsByMmsCampaignIdPut PUT /mms-campaigns/{mms_campaign_id} Update mms campaign
MmsCampaignApi MmsCampaignsCancelByMmsCampaignIdPut PUT /mms-campaigns/{mms_campaign_id}/cancel Cancel mms campaign
MmsCampaignApi MmsCampaignsGet GET /mms-campaigns Get list of mms campaigns
MmsCampaignApi MmsCampaignsPricePost POST /mms-campaigns/price Calculate price for mms campaign
MmsCampaignApi MmsCampaignsSendPost POST /mms-campaigns/send Create mms campaign
NumberApi NumbersBuyByDedicatedNumberPost POST /numbers/buy/{dedicated_number} Buy dedicated number
NumberApi NumbersGet GET /numbers Get all availible dedicated numbers
NumberApi NumbersSearchByCountryGet GET /numbers/search/{country} Get all dedicated numbers by country
PostLetterApi PostLettersExportGet GET /post/letters/history/export export post letter history
PostLetterApi PostLettersHistoryGet GET /post/letters/history Get all post letter history
PostLetterApi PostLettersPricePost POST /post/letters/price Calculate post letter price
PostLetterApi PostLettersSendPost POST /post/letters/send Send post letter
PostPostcardApi PostPostcardsHistoryExportGet GET /post/postcards/history/export Export postcard history to a CSV file
PostPostcardApi PostPostcardsHistoryGet GET /post/postcards/history Retrieve the history of postcards sent or scheduled
PostPostcardApi PostPostcardsPricePost POST /post/postcards/price Calculate price for sending one or more postcards
PostPostcardApi PostPostcardsSendPost POST /post/postcards/send Send one or more postcards
PostReturnAddressApi PostReturnAddressesByReturnAddressIdDelete DELETE /post/return-addresses/{return_address_id} Delete specific post return address
PostReturnAddressApi PostReturnAddressesByReturnAddressIdGet GET /post/return-addresses/{return_address_id} Get specific post return address
PostReturnAddressApi PostReturnAddressesByReturnAddressIdPut PUT /post/return-addresses/{return_address_id} Update post return address
PostReturnAddressApi PostReturnAddressesGet GET /post/return-addresses Get list of post return addresses
PostReturnAddressApi PostReturnAddressesPost POST /post/return-addresses Create post return address
ReferralAccountApi ReferralAccountsGet GET /referral/accounts Get all referral accounts
ResellerAccountApi ResellerAccountsByClientUserIdGet GET /reseller/accounts/{client_user_id} Get Reseller clients Account
ResellerAccountApi ResellerAccountsByClientUserIdPut PUT /reseller/accounts/{client_user_id} Update Reseller clients Account
ResellerAccountApi ResellerAccountsGet GET /reseller/accounts Get list of reseller accounts
ResellerAccountApi ResellerAccountsPost POST /reseller/accounts Create reseller account
SMSApi SmsCancelAllPut PUT /sms/cancel-all Update all scheduled message as cancelled
SMSApi SmsCancelByMessageIdPut PUT /sms/{message_id}/cancel Update scheduled message as cancelled
SMSApi SmsHistoryExportGet GET /sms/history/export Export all sms history
SMSApi SmsHistoryGet GET /sms/history Get all sms history
SMSApi SmsInboundGet GET /sms/inbound Get all inbound sms
SMSApi SmsInboundPost POST /sms/inbound Create inbound sms
SMSApi SmsInboundReadByMessageIdPut PUT /sms/inbound-read/{message_id} Mark inbound SMS as read
SMSApi SmsInboundReadPut PUT /sms/inbound-read Mark inbound SMS as read
SMSApi SmsPricePost POST /sms/price Calculate sms price
SMSApi SmsReceiptsByMessageIdGet GET /sms/receipts/{message_id} Get a Specific Delivery Receipt
SMSApi SmsReceiptsGet GET /sms/receipts Get all delivery receipts
SMSApi SmsReceiptsPost POST /sms/receipts Add a delivery receipt
SMSApi SmsReceiptsReadPut PUT /sms/receipts-read Mark delivery receipts as read
SMSApi SmsSendPost POST /sms/send Send sms message(s)
SMSApi SmsTemplatesByTemplateIdDelete DELETE /sms/templates/{template_id} Delete sms template
SMSApi SmsTemplatesByTemplateIdPut PUT /sms/templates/{template_id} Update sms template
SMSApi SmsTemplatesGet GET /sms/templates Get lists of all sms templates
SMSApi SmsTemplatesPost POST /sms/templates Create sms template
SMSDeliveryReceiptRulesApi SmsDeliveryReceiptAutomationDelete DELETE /automations/sms/receipts/{receipt_rule_id} Delete sms delivery receipt automation
SMSDeliveryReceiptRulesApi SmsDeliveryReceiptAutomationGet GET /automations/sms/receipts/{receipt_rule_id} Get specific sms delivery receipt automation
SMSDeliveryReceiptRulesApi SmsDeliveryReceiptAutomationPost POST /automations/sms/receipts Create sms delivery receipt automations
SMSDeliveryReceiptRulesApi SmsDeliveryReceiptAutomationPut PUT /automations/sms/receipts/{receipt_rule_id} Update sms delivery receipt automation
SMSDeliveryReceiptRulesApi SmsDeliveryReceiptAutomationsGet GET /automations/sms/receipts Get all sms delivery receipt automations
SearchApi SearchContactsListsGet GET /search/contacts-lists Get list of searched contact list
SmsCampaignApi SmsCampaignBySmsCampaignIdGet GET /sms-campaigns/{sms_campaign_id} Get specific sms campaign
SmsCampaignApi SmsCampaignsBySmsCampaignIdPut PUT /sms-campaigns/{sms_campaign_id} Update sms campaign
SmsCampaignApi SmsCampaignsCancelBySmsCampaignIdPut PUT /sms-campaigns/{sms_campaign_id}/cancel Cancel sms campaign
SmsCampaignApi SmsCampaignsGet GET /sms-campaigns Get list of sms campaigns
SmsCampaignApi SmsCampaignsPricePost POST /sms-campaigns/price Calculate price for sms campaign
SmsCampaignApi SmsCampaignsSendPost POST /sms-campaigns/send Create sms campaign
StatisticsApi StatisticsSmsGet GET /statistics/sms Get sms statistics
StatisticsApi StatisticsVoiceGet GET /statistics/voice Get voice statistics
SubaccountApi SubaccountsBySubaccountIdDelete DELETE /subaccounts/{subaccount_id} Delete a subaccount
SubaccountApi SubaccountsBySubaccountIdGet GET /subaccounts/{subaccount_id} Get specific subaccount
SubaccountApi SubaccountsBySubaccountIdPut PUT /subaccounts/{subaccount_id} Update subaccount
SubaccountApi SubaccountsGet GET /subaccounts Get all subaccounts
SubaccountApi SubaccountsPost POST /subaccounts Create new subaccount
SubaccountApi SubaccountsRegenApiKeyBySubaccountIdPut PUT /subaccounts/{subaccount_id}/regen-api-key Regenerate an API Key
TimezonesApi TimezonesGet GET /timezones Get supported list of timezones.
TransactionalEmailApi EmailHistoryExportGet GET /email/history/export Export all Transactional Email history
TransactionalEmailApi EmailHistoryGet GET /email/history Get all transactional email history
TransactionalEmailApi EmailPricePost POST /email/price Get transactional email price
TransactionalEmailApi EmailSendPost POST /email/send Send transactional email
TransferCreditApi ResellerTransferCreditPut PUT /reseller/transfer-credit Transfer Credit
UploadApi UploadsPost POST /uploads Upload File
UserEmailTemplatesApi EmailTemplateDelete DELETE /email/templates/{template_id} Delete user email template
UserEmailTemplatesApi EmailTemplateGet GET /email/templates/{template_id} Get specific user email template
UserEmailTemplatesApi EmailTemplatePost POST /email/templates Create email template
UserEmailTemplatesApi EmailTemplatePut PUT /email/templates/{template_id} Update email template
UserEmailTemplatesApi EmailTemplatesGet GET /email/templates Get all user email templates
VoiceApi VoiceCancelAllPut PUT /voice/cancel-all Update all voice messages as cancelled
VoiceApi VoiceCancelByMessageIdPut PUT /voice/{message_id}/cancel Update voice message status as cancelled
VoiceApi VoiceHistoryExportGet GET /voice/history/export Export voice history
VoiceApi VoiceHistoryGet GET /voice/history Get all voice history
VoiceApi VoiceLangGet GET /voice/lang Get all voice languages
VoiceApi VoicePricePost POST /voice/price Calculate voice price
VoiceApi VoiceReceiptsGet GET /voice/receipts Get all delivery receipts
VoiceApi VoiceReceiptsPost POST /voice/receipts Add a delivery receipt
VoiceApi VoiceReceiptsReadPut PUT /voice/receipts-read Mark delivery receipts as read
VoiceApi VoiceSendPost POST /voice/send Send voice message(s)
VoiceDeliveryReceiptRulesApi VoiceDeliveryReceiptAutomationDelete DELETE /automations/voice/receipts/{receipt_rule_id} Delete voice delivery receipt automation
VoiceDeliveryReceiptRulesApi VoiceDeliveryReceiptAutomationGet GET /automations/voice/receipts/{receipt_rule_id} Get specific voice delivery receipt automation
VoiceDeliveryReceiptRulesApi VoiceDeliveryReceiptAutomationPost POST /automations/voice/receipts Create voice delivery receipt automations
VoiceDeliveryReceiptRulesApi VoiceDeliveryReceiptAutomationPut PUT /automations/voice/receipts/{receipt_rule_id} Update voice delivery receipt automation
VoiceDeliveryReceiptRulesApi VoiceDeliveryReceiptAutomationsGet GET /automations/voice/receipts Get all voice delivery receipt automations

Documentation for Models

Documentation for Authorization

BasicAuth

  • Type: HTTP basic authentication