I'm working on dynamically generating the links to the CC form, based on my customers ConstantContact member number, in the form:
I'm trying to figure out what the "llr and "sit" and "p" variables are for?
Information about that, even internally, is limited, since the 'quick link' you're referring to is meant to be used as-is, and will only send the end contact to the area where they can join your client's email list. That being said, our best guesses are:
m=SOID (the unique Constant Contact account ID)
p=oi, oi means opt in, as in, the contact is opting into the mailing list
Those are the only variables that appear to be required.
llr / sit : really pretty fuzzy here, but they may help store cookies so that if a user inputs information and navigates away from the page, the information is retained.
It would be safest to keep the p, llr and sit values as they come from the quick link, since we really can't support the quick link as if it's a true API, but you are welcome to test the functionality of self-generated quick links yourself if you want to go that route.
API Support Specialist
Is it possible to collect the values for m and llr from the API? I'd like to be able to dynamically build this link if possible. I've looked at the docs, but I don't see an account based endpoint that contains these data points.
Unfortuantely those two values are able to be fetched through the API. The only method to get those values is to have the user log in to their account and copy the signup form link, and then paste that link into your application so that it can be parsed. You can find more information about how to do that here: http://knowledgebase.constantcontact.com/articles/KnowledgeBase/5516-sign-up-form-links-and-buttons
API Support Specialist
Like Elijah mentioned, there is no way to get those values through the API. I wanted to clarify a little as to why that is. The Join My Mailing List form you are looking at is intended only to be used by our customers on their websites. It's part of our core product offering and those values are particular only to the functionality of that web form. We have no plans of making the values and flows of that form part of the API as it's not intended to be used that.
Our API is much more versatile and generic, providing you with everything you'd need to do any number of integrations (including a signup form). If you're looking to use our API at all, I'd recommend not using the Join My Mailing List form for your customers and instead making a ful integration that does the same thing through just the API.
Thanks for the update and the clarification. Adding a simple subscribe form to a web site is actually our exact use case. We provide sites as part of a SaaS package and allow clients to connect to third parties like Constant Contact to add additional functionality. Some clients have requested a method to add a subcribe form to their Constant Contact list.
It's a hassle to try and send them to the site, sign in, pull the subscribe form code, etc. and it seems like overkill to have to build a integration with the subscription api just to add a subscriber if you already have the system in place to accept a POST with the correct variables. We already have an OAuth2 flow in place so integrating that process with your service was negligible.
We use the same process with a certain simian service: authorize the app, pull the necessary data points and reconstruct their subscribe form on our end. Very simple and works wonderfully, just something to consider. Again, I appreciate the clarification.
We do have an API that allows you to POST to create a new Contact, GET to search if a Contact already exists and PUT to update an existing Contact (full CRUD operations). You can find that documentation here: http://developer.constantcontact.com/docs/contacts-api/contacts-collection.html?method=POST
We also have sample applications in C#, Java, Ruby and PHP that show how to use this with our wrapper libraries (taking almost all the work of learning our API out of the equation). You can find them here: http://developer.constantcontact.com/libraries/sample-code.html