Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

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)


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


Run the following command to generate the DLL

  • [Mac/Linux] /bin/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;


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();

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

Documentation for API Endpoints

All URIs are relative to

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


  • Type: HTTP basic authentication