formstack-api 0.0.1

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.
@@ -0,0 +1,52 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://www.formstack.com/api/v2/form.json?folders=1
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Authorization:
11
+ - Bearer <ACCESS_TOKEN>
12
+ response:
13
+ status:
14
+ code: 200
15
+ message: OK
16
+ headers:
17
+ Server:
18
+ - nginx
19
+ Date:
20
+ - Wed, 05 Nov 2014 15:13:28 GMT
21
+ Content-Type:
22
+ - application/json
23
+ Content-Length:
24
+ - '3600'
25
+ Connection:
26
+ - keep-alive
27
+ P3p:
28
+ - CP="CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI
29
+ DSP COR"
30
+ Set-Cookie:
31
+ - FormstackAdmin=mcshn9sthp8p5uund424ar99m7; path=/api/; secure; HttpOnly
32
+ Cache-Control:
33
+ - no-cache
34
+ body:
35
+ encoding: UTF-8
36
+ string: '{"forms":{"none":[{"id":"<FORM_ID>","name":"Test Form","viewkey":"ex3qBur1AS","views":"4","created":"2014-09-17
37
+ 19:44:47","updated":"2014-11-05 09:37:02","deleted":"0","submissions":"0","submissions_unread":"0","submissions_today":0,"url":"http:\/\/www.formstack.com\/forms\/?<FORM_ID>-ex3qBur1AS","data_url":"","summary_url":"","rss_url":"","encrypted":false,"thumbnail_url":"https:\/\/s3.amazonaws.com\/files.formstack.com\/admin\/","submit_button_title":null,"inactive":false,"timezone":"US\/Eastern","permissions":"full"},{"id":"1867858","name":"Test
38
+ Form - COPY","viewkey":"ex3qBur1AS","views":"0","created":"2014-11-05 15:38:45","updated":"2014-11-05
39
+ 09:55:04","deleted":"0","submissions":"0","submissions_unread":"0","submissions_today":0,"url":"http:\/\/www.formstack.com\/forms\/?1867858-ex3qBur1AS","data_url":"","summary_url":"","rss_url":"","encrypted":false,"thumbnail_url":"https:\/\/s3.amazonaws.com\/files.formstack.com\/admin\/","submit_button_title":null,"inactive":false,"timezone":"US\/Eastern","permissions":"full"},{"id":"1867867","name":"Test
40
+ Form - COPY 2","viewkey":"ex3qBur1AS","views":"0","created":"2014-11-05 15:58:27","updated":"2014-11-05
41
+ 09:58:27","deleted":"0","submissions":"0","submissions_unread":"0","submissions_today":0,"url":"http:\/\/www.formstack.com\/forms\/?1867867-ex3qBur1AS","data_url":"","summary_url":"","rss_url":"","encrypted":false,"thumbnail_url":"https:\/\/s3.amazonaws.com\/files.formstack.com\/admin\/","submit_button_title":null,"inactive":false,"timezone":"US\/Eastern","permissions":"full"},{"id":"1867869","name":"Test
42
+ Form - COPY 3","viewkey":"ex3qBur1AS","views":"0","created":"2014-11-05 16:00:16","updated":"2014-11-05
43
+ 10:00:16","deleted":"0","submissions":"0","submissions_unread":"0","submissions_today":0,"url":"http:\/\/www.formstack.com\/forms\/?1867869-ex3qBur1AS","data_url":"","summary_url":"","rss_url":"","encrypted":false,"thumbnail_url":"https:\/\/s3.amazonaws.com\/files.formstack.com\/admin\/","submit_button_title":null,"inactive":false,"timezone":"US\/Eastern","permissions":"full"},{"id":"1867872","name":"Test
44
+ Form - COPY 4","viewkey":"ex3qBur1AS","views":"0","created":"2014-11-05 16:01:47","updated":"2014-11-05
45
+ 10:01:47","deleted":"0","submissions":"0","submissions_unread":"0","submissions_today":0,"url":"http:\/\/www.formstack.com\/forms\/?1867872-ex3qBur1AS","data_url":"","summary_url":"","rss_url":"","encrypted":false,"thumbnail_url":"https:\/\/s3.amazonaws.com\/files.formstack.com\/admin\/","submit_button_title":null,"inactive":false,"timezone":"US\/Eastern","permissions":"full"},{"id":"1867873","name":"Test
46
+ Form - COPY 5","viewkey":"ex3qBur1AS","views":"0","created":"2014-11-05 16:03:03","updated":"2014-11-05
47
+ 10:03:03","deleted":"0","submissions":"0","submissions_unread":"0","submissions_today":0,"url":"http:\/\/www.formstack.com\/forms\/?1867873-ex3qBur1AS","data_url":"","summary_url":"","rss_url":"","encrypted":false,"thumbnail_url":"https:\/\/s3.amazonaws.com\/files.formstack.com\/admin\/","submit_button_title":null,"inactive":false,"timezone":"US\/Eastern","permissions":"full"},{"id":"1867884","name":"Test
48
+ Form - COPY 6","viewkey":"ex3qBur1AS","views":"0","created":"2014-11-05 16:10:09","updated":"2014-11-05
49
+ 10:10:09","deleted":"0","submissions":"0","submissions_unread":"0","submissions_today":0,"url":"http:\/\/www.formstack.com\/forms\/?1867884-ex3qBur1AS","data_url":"","summary_url":"","rss_url":"","encrypted":false,"thumbnail_url":"https:\/\/s3.amazonaws.com\/files.formstack.com\/admin\/","submit_button_title":null,"inactive":false,"timezone":"US\/Eastern","permissions":"full"}]}}'
50
+ http_version:
51
+ recorded_at: Wed, 05 Nov 2014 15:13:28 GMT
52
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,52 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://www.formstack.com/api/v2/form.json?folders=0
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Authorization:
11
+ - Bearer <ACCESS_TOKEN>
12
+ response:
13
+ status:
14
+ code: 200
15
+ message: OK
16
+ headers:
17
+ Server:
18
+ - nginx
19
+ Date:
20
+ - Wed, 05 Nov 2014 15:13:28 GMT
21
+ Content-Type:
22
+ - application/json
23
+ Content-Length:
24
+ - '3591'
25
+ Connection:
26
+ - keep-alive
27
+ P3p:
28
+ - CP="CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI
29
+ DSP COR"
30
+ Set-Cookie:
31
+ - FormstackAdmin=5p2bifivcmja3qi69mi7ei7j24; path=/api/; secure; HttpOnly
32
+ Cache-Control:
33
+ - no-cache
34
+ body:
35
+ encoding: UTF-8
36
+ string: '{"forms":[{"id":"<FORM_ID>","name":"Test Form","viewkey":"ex3qBur1AS","views":"4","created":"2014-09-17
37
+ 19:44:47","updated":"2014-11-05 09:37:02","deleted":"0","submissions":"0","submissions_unread":"0","submissions_today":0,"url":"http:\/\/www.formstack.com\/forms\/?<FORM_ID>-ex3qBur1AS","data_url":"","summary_url":"","rss_url":"","encrypted":false,"thumbnail_url":"https:\/\/s3.amazonaws.com\/files.formstack.com\/admin\/","submit_button_title":null,"inactive":false,"timezone":"US\/Eastern","permissions":"full"},{"id":"1867858","name":"Test
38
+ Form - COPY","viewkey":"ex3qBur1AS","views":"0","created":"2014-11-05 15:38:45","updated":"2014-11-05
39
+ 09:55:04","deleted":"0","submissions":"0","submissions_unread":"0","submissions_today":0,"url":"http:\/\/www.formstack.com\/forms\/?1867858-ex3qBur1AS","data_url":"","summary_url":"","rss_url":"","encrypted":false,"thumbnail_url":"https:\/\/s3.amazonaws.com\/files.formstack.com\/admin\/","submit_button_title":null,"inactive":false,"timezone":"US\/Eastern","permissions":"full"},{"id":"1867867","name":"Test
40
+ Form - COPY 2","viewkey":"ex3qBur1AS","views":"0","created":"2014-11-05 15:58:27","updated":"2014-11-05
41
+ 09:58:27","deleted":"0","submissions":"0","submissions_unread":"0","submissions_today":0,"url":"http:\/\/www.formstack.com\/forms\/?1867867-ex3qBur1AS","data_url":"","summary_url":"","rss_url":"","encrypted":false,"thumbnail_url":"https:\/\/s3.amazonaws.com\/files.formstack.com\/admin\/","submit_button_title":null,"inactive":false,"timezone":"US\/Eastern","permissions":"full"},{"id":"1867869","name":"Test
42
+ Form - COPY 3","viewkey":"ex3qBur1AS","views":"0","created":"2014-11-05 16:00:16","updated":"2014-11-05
43
+ 10:00:16","deleted":"0","submissions":"0","submissions_unread":"0","submissions_today":0,"url":"http:\/\/www.formstack.com\/forms\/?1867869-ex3qBur1AS","data_url":"","summary_url":"","rss_url":"","encrypted":false,"thumbnail_url":"https:\/\/s3.amazonaws.com\/files.formstack.com\/admin\/","submit_button_title":null,"inactive":false,"timezone":"US\/Eastern","permissions":"full"},{"id":"1867872","name":"Test
44
+ Form - COPY 4","viewkey":"ex3qBur1AS","views":"0","created":"2014-11-05 16:01:47","updated":"2014-11-05
45
+ 10:01:47","deleted":"0","submissions":"0","submissions_unread":"0","submissions_today":0,"url":"http:\/\/www.formstack.com\/forms\/?1867872-ex3qBur1AS","data_url":"","summary_url":"","rss_url":"","encrypted":false,"thumbnail_url":"https:\/\/s3.amazonaws.com\/files.formstack.com\/admin\/","submit_button_title":null,"inactive":false,"timezone":"US\/Eastern","permissions":"full"},{"id":"1867873","name":"Test
46
+ Form - COPY 5","viewkey":"ex3qBur1AS","views":"0","created":"2014-11-05 16:03:03","updated":"2014-11-05
47
+ 10:03:03","deleted":"0","submissions":"0","submissions_unread":"0","submissions_today":0,"url":"http:\/\/www.formstack.com\/forms\/?1867873-ex3qBur1AS","data_url":"","summary_url":"","rss_url":"","encrypted":false,"thumbnail_url":"https:\/\/s3.amazonaws.com\/files.formstack.com\/admin\/","submit_button_title":null,"inactive":false,"timezone":"US\/Eastern","permissions":"full"},{"id":"1867884","name":"Test
48
+ Form - COPY 6","viewkey":"ex3qBur1AS","views":"0","created":"2014-11-05 16:10:09","updated":"2014-11-05
49
+ 10:10:09","deleted":"0","submissions":"0","submissions_unread":"0","submissions_today":0,"url":"http:\/\/www.formstack.com\/forms\/?1867884-ex3qBur1AS","data_url":"","summary_url":"","rss_url":"","encrypted":false,"thumbnail_url":"https:\/\/s3.amazonaws.com\/files.formstack.com\/admin\/","submit_button_title":null,"inactive":false,"timezone":"US\/Eastern","permissions":"full"}]}'
50
+ http_version:
51
+ recorded_at: Wed, 05 Nov 2014 15:13:27 GMT
52
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,39 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://www.formstack.com/api/v2/form.json
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Authorization:
11
+ - Bearer fail
12
+ response:
13
+ status:
14
+ code: 401
15
+ message: Unauthorized
16
+ headers:
17
+ Server:
18
+ - nginx
19
+ Date:
20
+ - Wed, 05 Nov 2014 15:13:27 GMT
21
+ Content-Type:
22
+ - text/html; charset=UTF-8
23
+ Content-Length:
24
+ - '0'
25
+ Connection:
26
+ - keep-alive
27
+ P3p:
28
+ - CP="CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI
29
+ DSP COR"
30
+ Set-Cookie:
31
+ - FormstackAdmin=iceg9r39uau2mt7gr6m8u2gph1; path=/api/; secure; HttpOnly
32
+ Www-Authenticate:
33
+ - Bearer realm='Service', error='invalid_token'
34
+ body:
35
+ encoding: UTF-8
36
+ string: ''
37
+ http_version:
38
+ recorded_at: Wed, 05 Nov 2014 15:13:26 GMT
39
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,145 @@
1
+ require_relative '../lib/formstack/api'
2
+
3
+ RSpec.describe Formstack::API do
4
+
5
+ subject(:wrapper) { Formstack::API.new(access_token) }
6
+ let(:access_token) { ACCESS_TOKEN }
7
+ let(:valid_form_id) { FORM_ID }
8
+ let(:invalid_form_id) { 1234 }
9
+ let(:inaccessible_form_id) { INACCESSIBLE_FORM_ID }
10
+
11
+ describe '#request', :vcr do
12
+
13
+ it 'raises an exception when endpoint is empty' do
14
+ expect{wrapper.request('')}.to raise_exception('Missing End Point')
15
+ end
16
+
17
+ it 'raises an exception with a bad verb' do
18
+ expect{wrapper.request('/test/endpoint', 'FAIL')}.to raise_exception('Wrong verb')
19
+ end
20
+
21
+ let(:access_token) { 'fail' }
22
+ it 'raises an exception with a bad token' do
23
+ expect{wrapper.request('form.json')}.to raise_exception('Bad token')
24
+ end
25
+ end
26
+
27
+ describe '#forms', :vcr do
28
+ it 'responds with no folders by default' do
29
+ forms = wrapper.forms
30
+ expect(forms.class).to eq(Array)
31
+ end
32
+
33
+ it 'gets folders when asked' do
34
+ folders = wrapper.forms(true)
35
+ expect(folders.class).to eq(Hash)
36
+ end
37
+ end
38
+
39
+ describe '#form_details', :vcr do
40
+ it 'reads a form name' do
41
+ form = wrapper.form_details(valid_form_id)
42
+ expect(form['name']).to eq('Test Form')
43
+ end
44
+
45
+ it 'raises an error if form id is not a number' do
46
+ expect{wrapper.form_details('TEXT')}.to raise_exception('Form ID must be numeric')
47
+ end
48
+
49
+ it 'responds with an error if form id doesnt exist' do
50
+ response = wrapper.form_details(invalid_form_id)
51
+ expect(response['status']).to eq('error')
52
+ expect(response['error']).to eq('The form was not found')
53
+ end
54
+
55
+ it 'responds with an error if you dont have access to form' do
56
+ response = wrapper.form_details(inaccessible_form_id)
57
+ expect(response['status']).to eq('error')
58
+ expect(response['error']).to eq('You do not have high enough permissions for this form.')
59
+ end
60
+ end
61
+
62
+ describe '#copy_form', :vcr do
63
+ it 'adds COPY at the end of the form name' do
64
+ form = wrapper.form_details(valid_form_id)
65
+ copied_form = wrapper.copy_form(valid_form_id)
66
+ expect(copied_form['name']).to match(/^#{form['name']} - COPY/)
67
+ end
68
+
69
+ it 'raises an error if form id is not a number' do
70
+ expect{wrapper.copy_form('TEXT')}.to raise_exception('Form ID must be numeric')
71
+ end
72
+
73
+ it 'raises an error if form id is invalid' do
74
+ response = wrapper.copy_form(invalid_form_id)
75
+ expect(response['status']).to eq('error')
76
+ expect(response['error']).to eq('A valid form id was not supplied')
77
+ end
78
+ end
79
+
80
+ describe '#form_submissions', :vcr do
81
+ it 'gets submissions default' do
82
+ form = wrapper.form_details(valid_form_id)
83
+ submissions_count = form['submissions'].to_i > 25 ? 25 : form['submissions'].to_i
84
+
85
+ submissions = wrapper.form_submissions(valid_form_id)
86
+ expect(submissions_count).to eq(submissions.count)
87
+ end
88
+
89
+ it 'raises an error if form id isnt numeric' do
90
+ expect{wrapper.form_submissions('TEXT')}.to raise_exception('Form ID must be numeric')
91
+ end
92
+
93
+ it 'raises an error if min time is invalid' do
94
+ expect{wrapper.form_submissions(valid_form_id, '', 'BAD')}.to raise_exception('Invalid value for minTime parameter')
95
+ end
96
+
97
+ it 'raises an error if max time is invalid' do
98
+ expect{wrapper.form_submissions(valid_form_id, '', '', 'BAD')}.to raise_exception('Invalid value for maxTime parameter')
99
+ end
100
+
101
+ it 'raises an error for a search mismatch' do
102
+ field_ids = [1, 2, 3]
103
+ field_values = ['test-1', 'test-2']
104
+ expect{wrapper.form_submissions(valid_form_id, '', '', '', field_ids, field_values)}.to raise_exception('You must have a one to one relationship')
105
+ end
106
+
107
+ it 'raises an error for a search mismatch reversed' do
108
+ field_ids = [1, 2]
109
+ field_values = ['test-1', 'test-2', 'test-3']
110
+ expect{wrapper.form_submissions(valid_form_id, '', '', '', field_ids, field_values)}.to raise_exception('You must have a one to one relationship')
111
+ end
112
+
113
+ it 'raises an error if field ids are not numeric' do
114
+ field_ids = [1, 'two']
115
+ field_values = ['test-1', 'test-2']
116
+ expect{wrapper.form_submissions(valid_form_id, '', '', '', field_ids, field_values)}.to raise_exception('Field IDs must be numeric')
117
+ end
118
+
119
+ it 'raises an error if per_page is not numeric' do
120
+ expect{wrapper.form_submissions(valid_form_id, '', '', '', [], [], 1, 'fail')}.to raise_exception('The perPage value must be numeric')
121
+ end
122
+
123
+ it 'raises an error if requests per page are less than 1' do
124
+ expect{wrapper.form_submissions(valid_form_id, '', '', '', [], [], 1, 0)}.to raise_exception('You can only retrieve a minimum of 1 and maximum of 100 submissions per request')
125
+ end
126
+
127
+ it 'raises an error if requests per page are more than 100' do
128
+ expect{wrapper.form_submissions(valid_form_id, '', '', '', [], [], 1, 101)}.to raise_exception('You can only retrieve a minimum of 1 and maximum of 100 submissions per request')
129
+ end
130
+
131
+ it 'raises an error if page_number is not numeric' do
132
+ expect{wrapper.form_submissions(valid_form_id, '', '', '', [], [], 'fail')}.to raise_exception('The pageNumber value must be numeric')
133
+ end
134
+
135
+ it 'raises an error if page number is not working'
136
+
137
+ it 'raises an error if the sort parameter is invalid' do
138
+ expect{wrapper.form_submissions(valid_form_id, '', '', '', [], [], 1, 100, 'fail')}.to raise_exception('The sort parameter must be ASC or DESC')
139
+ end
140
+
141
+ it 'returns false with no data'
142
+ it 'returns true with data'
143
+
144
+ end
145
+ end
metadata ADDED
@@ -0,0 +1,191 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: formstack-api
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Mauro Morales
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-11-11 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: httparty
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: bundler
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '1.6'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '1.6'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rake
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '10.3'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '10.3'
55
+ - !ruby/object:Gem::Dependency
56
+ name: rspec
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '3.1'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '3.1'
69
+ - !ruby/object:Gem::Dependency
70
+ name: guard
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '2.6'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '2.6'
83
+ - !ruby/object:Gem::Dependency
84
+ name: guard-rspec
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '4.3'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '4.3'
97
+ - !ruby/object:Gem::Dependency
98
+ name: vcr
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: '2.9'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: '2.9'
111
+ - !ruby/object:Gem::Dependency
112
+ name: webmock
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: '1.18'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: '1.18'
125
+ description: Ruby Formstack API V2 Ruby Wrapper based on https://github.com/formstack/formstack-api/tree/master/php.
126
+ email:
127
+ - contact@mauromorales.com
128
+ executables: []
129
+ extensions: []
130
+ extra_rdoc_files: []
131
+ files:
132
+ - ".gitignore"
133
+ - ".rspec"
134
+ - ".travis.yml"
135
+ - Gemfile
136
+ - Guardfile
137
+ - LICENSE.txt
138
+ - README.md
139
+ - Rakefile
140
+ - formstack-api.gemspec
141
+ - lib/formstack/api.rb
142
+ - lib/formstack/api/version.rb
143
+ - spec/spec_helper.rb
144
+ - spec/support/vcr.rb
145
+ - spec/vcr/Formstack_API/_copy_form/adds_COPY_at_the_end_of_the_form_name.yml
146
+ - spec/vcr/Formstack_API/_copy_form/raises_an_error_if_form_id_is_invalid.yml
147
+ - spec/vcr/Formstack_API/_form_details/reads_a_form_name.yml
148
+ - spec/vcr/Formstack_API/_form_details/responds_with_an_error_if_form_id_doesnt_exist.yml
149
+ - spec/vcr/Formstack_API/_form_details/responds_with_an_error_if_you_dont_have_access_to_form.yml
150
+ - spec/vcr/Formstack_API/_form_submissions/gets_submissions_default.yml
151
+ - spec/vcr/Formstack_API/_forms/gets_folders_when_asked.yml
152
+ - spec/vcr/Formstack_API/_forms/responds_with_no_folders_by_default.yml
153
+ - spec/vcr/Formstack_API/_request/raises_an_exception_with_a_bad_token.yml
154
+ - spec/wrapper_spec.rb
155
+ homepage: https://github.com/LAS-IT/formstack-api
156
+ licenses:
157
+ - MIT
158
+ metadata: {}
159
+ post_install_message:
160
+ rdoc_options: []
161
+ require_paths:
162
+ - lib
163
+ required_ruby_version: !ruby/object:Gem::Requirement
164
+ requirements:
165
+ - - ">="
166
+ - !ruby/object:Gem::Version
167
+ version: '0'
168
+ required_rubygems_version: !ruby/object:Gem::Requirement
169
+ requirements:
170
+ - - ">="
171
+ - !ruby/object:Gem::Version
172
+ version: '0'
173
+ requirements: []
174
+ rubyforge_project:
175
+ rubygems_version: 2.2.2
176
+ signing_key:
177
+ specification_version: 4
178
+ summary: Formstack API V2 Ruby Wrapper.
179
+ test_files:
180
+ - spec/spec_helper.rb
181
+ - spec/support/vcr.rb
182
+ - spec/vcr/Formstack_API/_copy_form/adds_COPY_at_the_end_of_the_form_name.yml
183
+ - spec/vcr/Formstack_API/_copy_form/raises_an_error_if_form_id_is_invalid.yml
184
+ - spec/vcr/Formstack_API/_form_details/reads_a_form_name.yml
185
+ - spec/vcr/Formstack_API/_form_details/responds_with_an_error_if_form_id_doesnt_exist.yml
186
+ - spec/vcr/Formstack_API/_form_details/responds_with_an_error_if_you_dont_have_access_to_form.yml
187
+ - spec/vcr/Formstack_API/_form_submissions/gets_submissions_default.yml
188
+ - spec/vcr/Formstack_API/_forms/gets_folders_when_asked.yml
189
+ - spec/vcr/Formstack_API/_forms/responds_with_no_folders_by_default.yml
190
+ - spec/vcr/Formstack_API/_request/raises_an_exception_with_a_bad_token.yml
191
+ - spec/wrapper_spec.rb