Giter Club home page Giter Club logo

ruby-sdk's Introduction

Constant Contact Ruby SDK

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

A. Rails example :

  1. Install the gem :

     gem install constantcontact
    
  2. Configure Rails to load the gem :

     Rails::Initializer.run do |config|
         ...
         config.gem "constantcontact"
         ...
     end
    

or add the following in your .Gemfile :

    gem 'constantcontact'
  1. Create a new action and add the following code:

     @oauth = ConstantContact::Auth::OAuth2.new(
         :api_key => 'your api key',
         :api_secret => 'your secret key',
         :redirect_url => 'your redirect url'
     )
    
     @error = params[:error]
     @user = params[:username]
     @code = params[:code]
    
     if @code
         response = @oauth.get_access_token(@code)
         if response
             token = response['access_token']
             cc = ConstantContact::Api.new('your api key')
             @contacts = cc.get_contacts(token)
         end
     end
    

    Note: 'your redirect url' is the URL of the action you just created.

  2. Create a view for the above mentioned action with the following code:

     <% if @error %>
         <p>
             <%=@error%>
         </p>
     <% end %>
    
     <% if @code %>
         <% if @contacts %>
             <% for contact in @contacts %>
                 <p>
                     Contact name: <%= contact.first_name + contact.last_name %>
                 </p>
             <% end %>
         <% end %>
     <% else %>
         <a href="<%[email protected]_authorization_url%>">Click to authorize</a>
     <% end %>
    
  3. The first time you access the action in browser you should see the "Click to authorize" link. Follow the link, go through all the Constant Contact steps required and then you will be redirected back to your action and you should see the list of contacts.

  4. Add config initializer (optional)

    ConstantContact::Util::Config.configure do |config|
      config[:auth][:api_key] = 'foobar'
      config[:auth][:api_secret] = 'foobar'
    end

B. Sinatra example :


1. Install the gem :

        gem install constantcontact

2. Add the following code in myapp.rb (just an example):
        require 'active_support'
        require 'constantcontact'

        get '/my_url' do
            @oauth = ConstantContact::Auth::OAuth2.new(
                :api_key => 'your api key',
                :api_secret => 'your secret key',
                :redirect_url => 'your redirect url'
            )

            @error = params[:error]
            @user = params[:username]
            @code = params[:code]

            if @code
                response = @oauth.get_access_token(@code)
                if response
                    token = response['access_token']
                    cc = ConstantContact::Api.new('your api key')
                    @contacts = cc.get_contacts(token)
                end
            end

            erb :my_view
        end


    Note: 'your redirect url' is the URL of the route you just created ( get '/my_url' ).

4. Create a my_view.rhtml (or my_view.erb) with the following code:

        <% if @error %>
            <p>
                <%=@error%>
            </p>
        <% end %>

        <% if @code %>
            <% if @contacts %>
                <% for contact in @contacts %>
                    <p>
                        Contact name: <%= contact.first_name + contact.last_name %>
                    </p>
                <% end %>
            <% end %>
        <% else %>
            <a href="<%[email protected]_authorization_url%>">Click to authorize</a>
        <% end %>

5. The first time you access the action in browser you should see the "Click to authorize" link.
Follow the link, go through all the Constant Contact steps required 
and then you will be redirected back to your action and you should see the list of contacts.

ruby-sdk's People

Contributors

dsjellz avatar aguriuc avatar mapalumbo avatar richm541 avatar

Watchers

 avatar James Cloos avatar

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.