survey_monkey_api 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c1cf445d07ab81c4b2d0a8b2e6a7d46bc3032cfa
4
- data.tar.gz: 0e7abb29aab6507e2e033291b8043e4023f88a08
3
+ metadata.gz: cc47049a0d0d095e58926273abaf25f5ea4974e6
4
+ data.tar.gz: 23bffa808dfa822b46f43e16281fecf68f1422cd
5
5
  SHA512:
6
- metadata.gz: c56fa2a1e3dd88c364a99473067d3f9a6dc50c15880556afb80edeefd62c7d82215d95d42d1bbaeddcd8812d44a84a6b77dcc5f3430ffd9614afbe6290007fbd
7
- data.tar.gz: 2aee5bddb79281c3464249b9836e0d027259c810d8f1c66ac3a8bff447de9ef886e55a8b044c9879e3ba924891d9c66f9d3ef28ed4e4a9561d26f7285fb9d51d
6
+ metadata.gz: a02e2402277fb4fa14d2256d5fb9e77fe8dd6c38bb9248d325fd1963c800ae8099b55a5e7134617558e8b5cf1767975b7c9c804b8acfb2791d68ffa218158568
7
+ data.tar.gz: 76950b51efbd75e959d7e9fab8905cc9d80f5eabad8ce408698999e85f2d9a8ff317d1a9f8a6c4d42ed1285876bcdb8fead65a7e345e082edf88178e244b4818
data/README.md CHANGED
@@ -0,0 +1,91 @@
1
+ # SurveyMonkeyApi
2
+
3
+ Actions with surveys in SurveyMonkey system.
4
+
5
+ ## Installation
6
+
7
+ Add this line to your application's Gemfile:
8
+
9
+ ```ruby
10
+ gem 'survey_monkey_api'
11
+ ```
12
+
13
+ And then execute:
14
+
15
+ $ bundle
16
+
17
+ Or install it yourself as:
18
+
19
+ $ gem install survey_monkey_api
20
+
21
+ ## Usage
22
+
23
+ ### Create SurveyMonkeyApi object
24
+
25
+ ```ruby
26
+ require 'survey_monkey_api'
27
+ client = SurveyMonkeyApi::Client.new
28
+ ```
29
+
30
+ ### User information
31
+
32
+ Request for getting user's information is #me.
33
+
34
+ ```ruby
35
+ client.me
36
+ ```
37
+
38
+ #### Responces
39
+
40
+ ```ruby
41
+ {
42
+ "username"=>"SomeUsername",
43
+ "scopes"=>{"available"=>["users_read", "surveys_read", "collectors_read", "collectors_write", "contacts_read", "contacts_write", "surveys_write", "responses_read", "responses_read_detail", "responses_write", "groups_read", "webhooks_read", "webhooks_write", "library_read"], "granted"=>["collectors_read", "contacts_write", "contacts_read", "surveys_write", "surveys_read", "collectors_write", "users_read"]},
44
+ "first_name"=>nil,
45
+ "last_name"=>nil,
46
+ "account_type"=>"premier_annual",
47
+ "language"=>"da",
48
+ "email_verified"=>false,
49
+ "email"=>"johndoe@gmail.com",
50
+ "href"=>"https://api.surveymonkey.net/v3/users/me",
51
+ "date_last_login"=>"2017-12-21T13:44:01.470000+00:00",
52
+ "sso_connections"=>[],
53
+ "date_created"=>"2016-05-11T09:48:00+00:00",
54
+ "id"=>"00000001"
55
+ }
56
+ ```
57
+
58
+ ### Surveys
59
+
60
+ Request for getting list of surveys is #surveys.
61
+
62
+ ```ruby
63
+ client.surveys
64
+ ```
65
+
66
+ #### Responces
67
+
68
+ ```ruby
69
+ {
70
+ "per_page"=>50,
71
+ "total"=>99,
72
+ "data"=>[
73
+ {"href"=>"https://api.surveymonkey.net/v3/surveys/000000001", "nickname"=>"", "id"=>"000000001", "title"=>"First"},
74
+ {"href"=>"https://api.surveymonkey.net/v3/surveys/000000002", "nickname"=>"", "id"=>"000000002", "title"=>"Second"}
75
+ ],
76
+ "page"=>1,
77
+ "links"=>{
78
+ "self"=>"https://api.surveymonkey.net/v3/surveys?page=1&per_page=50",
79
+ "last"=>"https://api.surveymonkey.net/v3/surveys?page=2&per_page=50",
80
+ "next"=>"https://api.surveymonkey.net/v3/surveys?page=2&per_page=50"
81
+ }
82
+ }
83
+ ```
84
+
85
+ ## Contributing
86
+
87
+ Bug reports and pull requests are welcome on GitHub at https://github.com/kortirso/surveymonkey.
88
+
89
+ ## License
90
+
91
+ The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
@@ -0,0 +1,14 @@
1
+ module SurveyMonkeyApi
2
+ class Client
3
+ # API endpoints for surveys resources
4
+ module Surveys
5
+ # Returns list of surveys as array in ['data'] field
6
+ # Each survey looks like
7
+ # {"href"=>"https://api.surveymonkey.net/v3/surveys/120053599", "nickname"=>"", "id"=>"120053599", "title"=>"Nyt"}
8
+ def surveys(options = {})
9
+ response = self.class.get('/v3/surveys', query: options)
10
+ response.parsed_response
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,12 @@
1
+ module SurveyMonkeyApi
2
+ class Client
3
+ # API endpoints for users resources
4
+ module Users
5
+ # Returns current user's information
6
+ def me(options = {})
7
+ response = self.class.get('/v3/users/me', query: options)
8
+ response.parsed_response
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,20 @@
1
+ require 'httparty'
2
+ require_relative 'client/users'
3
+ require_relative 'client/surveys'
4
+
5
+ module SurveyMonkeyApi
6
+ # Client class for api requests
7
+ class Client
8
+ include HTTParty
9
+ include SurveyMonkeyApi::Client::Users
10
+ include SurveyMonkeyApi::Client::Surveys
11
+
12
+ base_uri 'https://api.surveymonkey.net'
13
+ format :json
14
+
15
+ def initialize(_args = {})
16
+ access_token = ENV['SURVEY_MONKEY_TOKEN']
17
+ self.class.default_options.merge!(headers: { 'Authorization' => "Bearer #{access_token}", 'Content-Type' => 'application/json' })
18
+ end
19
+ end
20
+ end
@@ -1,3 +1,3 @@
1
1
  module SurveyMonkeyApi
2
- VERSION = '0.1.0'.freeze
2
+ VERSION = '0.2.0'.freeze
3
3
  end
data/lib/surveymonkey.rb CHANGED
@@ -1,5 +1,7 @@
1
- require 'surveymonkey/version'
1
+ require_relative 'surveymonkey/version'
2
+ require_relative 'surveymonkey/client'
2
3
 
3
4
  # Top-level module
4
5
  module SurveyMonkeyApi
6
+ class Failure < StandardError; end
5
7
  end
data/surveymonkey.gemspec CHANGED
@@ -26,4 +26,5 @@ Gem::Specification.new do |spec|
26
26
  spec.add_development_dependency 'rake', '~> 10.0'
27
27
  spec.add_development_dependency 'rspec', '~> 3.0'
28
28
  spec.add_development_dependency 'rubocop', '~> 0.49.1'
29
+ spec.add_dependency 'httparty', '~> 0.15'
29
30
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: survey_monkey_api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Anton Bogdanov
@@ -66,6 +66,20 @@ dependencies:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
68
  version: 0.49.1
69
+ - !ruby/object:Gem::Dependency
70
+ name: httparty
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '0.15'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '0.15'
69
83
  description: Actions with surveys in SurveyMonkey system
70
84
  email:
71
85
  - kortirso@gmail.com
@@ -85,6 +99,9 @@ files:
85
99
  - bin/console
86
100
  - bin/setup
87
101
  - lib/surveymonkey.rb
102
+ - lib/surveymonkey/client.rb
103
+ - lib/surveymonkey/client/surveys.rb
104
+ - lib/surveymonkey/client/users.rb
88
105
  - lib/surveymonkey/version.rb
89
106
  - surveymonkey.gemspec
90
107
  homepage: https://github.com/kortirso/surveymonkey