GithubHelp home page GithubHelp logo

.net-sdk's People

Contributors

aguriuc avatar bvysocky avatar csciuto avatar daveberard avatar drbldgtl avatar dsjellz avatar egaiter avatar mcohen75 avatar ncstrause avatar sergiugirnetosf avatar shannon7wallace avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

.net-sdk's Issues

Adding data of Type `AddContactsImportData` to `IList` overwrites data at all indices

The problem faced is that whatever item is added to an IList of type AddContactsImportData it will overwrite all of the other records.

In the following code, the last contactList item in the for-loop overwrites the first item i.e. index 1 overwrites the data at index 0 and adds the new data at index 1. All contactList items of type AddContactsImportData are overwritten by the contactList item that is added last.

AddContactsImportData contact = new AddContactsImportData();
IList<string> email_addresses = new List<string>();
IList<AddContactsImportData> contactList = new List<AddContactsImportData>();

for (int i = 0; i < 2; i++)
{
     contact.EmailAddresses.Clear();
     contact.EmailAddresses.Add("Email" + i.ToString());
     contact.FirstName = "FirstName" + i.ToString();
     contact.LastName = "LastName" + i.ToString();
     contactList.Add(contact);
}

string json = Newtonsoft.Json.JsonConvert.SerializeObject(contactList);
lbTest.Text = lbTest.Text + "<br />" + json;           // ASP:Label

This code yields the following JSON:

[{"email_addresses":["Email1"],"addresses":[],"custom_fields":[],"first_name":"FirstName1","middle_name":null,"last_name":"LastName1","job_title":null,"company_name":null,"work_phone":null,"home_phone":null,"birthday_day":null,"birthday_month":null,"anniversary":null},
{"email_addresses":["Email1"],"addresses":[],"custom_fields":[],"first_name":"FirstName1","middle_name":null,"last_name":"LastName1","job_title":null,"company_name":null,"work_phone":null,"home_phone":null,"birthday_day":null,"birthday_month":null,"anniversary":null}]

I was expecting the first row to contain Email0, FirstName0 and LastName0.

Asynchronous API calls

It would be nice if an async methods available, since we are going over a network that might have some lag, and then to your servers, which might hold up resources waiting on network, or even your own servers if you have a high traffic time.

nuget package

Hi,

I see that there is a nuget folder on the repository but couldn't find the nuget package on the official repository.

Is there any reason that this package was not published yet ?
If you want, I can published it and put the credentials used to published it on github ?

By the way, thanks guys for this project. It allowed us to easily plug our application with constant contact.

Thanks,

wont compile

Unable to cast object of type 'CTCT.Services.CampaignScheduleService' to type 'CTCT.Services.IEmailCampaignService'.

ArchiveURL, Archivestatus still in SDK

A developer brought up the issue in this community post:
https://community.constantcontact.com/t5/Developer-Support-ask-questions/ArchiveURL-missing-from-Campaign-details-in-API-v2/m-p/229439#M9145

They always return null, but it's raising questions with developers, causing confusion, hesitation.

We have by design removed support for email campaign archive_url and archive_status in AppConnect, but the functions still exist.

See https://github.com/constantcontact/.net-sdk/blob/master/CTCTWrapper/Components/EmailCampaigns/EmailCampaign.cs

WebException with status "Created Created"

Hi,

I'm currently working on a project where I have integrated a newsletter subscription system with your SDK.
All I need is inside, so it's great ! :)

However, when I want to add a new contact to a list, a WebException is thrown in my code with status "Created Created" as you can seen below in the screenshot.
ctct

Indeed, we can see that StatusCode is not equals to HttpStatus.OK.

Have you ever encountered this problem? Moreover, this issue occurs when I delete a contact from a list, the status in this case is "No content, No content"...

Thank's :)
Damdirt

GetContacts method does not URL encode parameters (specifically email address).

So I'm pretty sure i've uncovered a larger issue with the SDK that should be looked into. That is, when the SDK created its URLS to pass though to the API, it does not URL encode critical parameters. In my case, its the email address on calls to GetContacts(string email, ...)

It is VERY common these days for emails to have the "+" symbol ever since gmail has supported the "myemail+[anything]@gmail.com" as a way to set up inbox rules...

When you fix this bug, i'd consider sweeping the code for all cases where you generate urls from userdata and make sure they get url encoded.

ResultSet<TrackingSummary> GetEmailCampaignActivities returns 'null'

When I make a call to GetEmailCampaignActivites, it seems that the JSON response is of a different form than expected.

In ContactTrackingServices.cs when I change the return type from ResultSet<TrackingSummary> to IList<TrackingSummary> it works.


I'm having a similar problem with GetActivities. When I look at ContactActivity.cs it seems to expect a very different response than the one provided by v2 of the API.

For example, campaign_id, activity_type, contact_id, and email_address are completely missing from ContactActivity.cs.

Response from contact tracking report

{
    "meta": {
        "pagination": {}
    },
    "results": [{
        "activity_type": "EMAIL_BOUNCE",
        "campaign_id": "11217797",
        "contact_id": "1017",
        "email_address": "[email protected]",
        "bounce_code": "S",
        "bounce_description": "Suspended",
        "bounce_message": "",
        "bounce_date": "2015-07-21T23:05:00.000Z"
    }, {
        "activity_type": "EMAIL_SEND",
        "campaign_id": "112187797",
        "contact_id": "102017",
        "send_date": "2015-07-21T23:05:00.000Z"
    }, {
        "activity_type": "EMAIL_BOUNCE",
        "campaign_id": "115774954",
        "contact_id": "10217",
        "email_address": "[email protected]",
        "bounce_code": "S",
        "bounce_description": "Suspended",
        "bounce_message": "",
        "bounce_date": "2015-07-21T11:50:00.000Z"
    }, {
        "activity_type": "EMAIL_SEND",
        "campaign_id": "11217954",
        "contact_id": "104017",
        "send_date": "2015-07-21T11:50:00.000Z"
    }]
}

Bulk Activities - Remove Contacts SDK dosent match data contract

On the bulk activity page for removing contacts the data contract is using IList

http://developer.constantcontact.com/docs/bulk_activities_api/bulks-activities-remove-contacts.html#example-json-request-body

in the SDK the method signature has Ilist. when using this method i cannot remove more than one contact email address.
Activity AddRemoveContactsFromListsActivity(string accessToken, string apiKey, IList emailAddresses, IList lists);

does this need to be
Activity AddRemoveContactsFromListsActivity(string accessToken, string apiKey, IList emailAddresses, IList lists);

Where to find the "CTCT.dll" file ?

The documentation says...

In order to use the Constant Contact SDK you have to follow these steps:

  1. Add the CTCT.dll library to your references project.

Where do I find this dll ?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.