jotform_api 1.0.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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 8b868c128a15204af44791eab8a791caec47ace0dd09614493ae9eda5d7e6849
4
+ data.tar.gz: 91c60b399b7253904862629450a80efa0da1c7a5d6ca5f41092bb4f915a50865
5
+ SHA512:
6
+ metadata.gz: 830b54d4e5edc5c9a0cfe000acbae137b459d4b57462b60a90b21aceebf9d67aa94d62e1ed419b440d53b70a4ae25bb029d06639e94f9d8f6d5b4b6ac61cb397
7
+ data.tar.gz: e66cbbda52d9d4b04635c7bc52c3093d2689018ce24ce8fc45c2680b56e32a052ac77293d38c3b53367118c001d828132d95e1d3b007d0d5720426e40d309450
data/Rakefile ADDED
@@ -0,0 +1,8 @@
1
+ require 'rake/testtask'
2
+
3
+ Rake::TestTask.new do |t|
4
+ t.libs << 'test'
5
+ end
6
+
7
+ desc "Run tests"
8
+ task :default => :test
data/bin/jotform ADDED
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env ruby
2
+
data/lib/jotform.rb ADDED
@@ -0,0 +1,138 @@
1
+ class Jotform
2
+ attr_accessor :apiKey
3
+ attr_accessor :baseURL
4
+ attr_accessor :apiVersion
5
+
6
+ # Create the object
7
+ def initialize(apiKey = nil, baseURL = "http://api.jotform.com", apiVersion = "v1")
8
+ @apiKey = apiKey
9
+ @baseURL = baseURL
10
+ @apiVersion = apiVersion
11
+ end
12
+
13
+ def _executeHTTPRequest(endpoint, parameters = nil, type = "GET")
14
+ url = [@baseURL, @apiVersion, endpoint].join("/").concat('?apiKey='+@apiKey)
15
+ url = URI.parse(url)
16
+
17
+ if type == "GET"
18
+ response = Net::HTTP.get_response(url)
19
+ elsif type == "POST"
20
+ response = Net::HTTP.post_form(url, parameters)
21
+ end
22
+
23
+ if response.kind_of? Net::HTTPSuccess
24
+ return JSON.parse(response.body)["content"]
25
+ else
26
+ puts JSON.parse(response.body)["message"]
27
+ return nil
28
+ end
29
+ end
30
+
31
+ def _executeGetRequest(endpoint, parameters = [])
32
+ return _executeHTTPRequest(endpoint,parameters, "GET")
33
+ end
34
+
35
+ def _executePostRequest(endpoint, parameters = [])
36
+ return _executeHTTPRequest(endpoint,parameters, "POST")
37
+ end
38
+
39
+ def getUser
40
+ return _executeGetRequest("user")
41
+ end
42
+
43
+ def getUsage
44
+ return _executeGetRequest("user/usage");
45
+ end
46
+
47
+ def getForms
48
+ return _executeGetRequest("user/forms")
49
+ end
50
+
51
+ def getSubmissions
52
+ return _executeGetRequest("user/submissions")
53
+ end
54
+
55
+ def getSubusers
56
+ return _executeGetRequest("user/subusers")
57
+ end
58
+
59
+ def getFolders
60
+ return _executeGetRequest("user/folders")
61
+ end
62
+
63
+ def getReports
64
+ return _executeGetRequest("user/reports")
65
+ end
66
+
67
+ def getSettings
68
+ return _executeGetRequest("user/settings")
69
+ end
70
+
71
+ def getHistory
72
+ return _executeGetRequest("user/history")
73
+ end
74
+
75
+ def getForm(formID)
76
+ return _executeGetRequest("form/"+ formID)
77
+ end
78
+
79
+ def getFormQuestions(formID)
80
+ return _executeGetRequest("form/"+formID+"/questions")
81
+ end
82
+
83
+ def getFormQuestion(formID, qid)
84
+ return _executeGetRequest("form/"+formID+"/question/"+qid)
85
+ end
86
+
87
+ def getFormProperties(formID)
88
+ return _executeGetRequest("form/"+formID+"/properties")
89
+ end
90
+
91
+ def getFormProperty(formID, propertyKey)
92
+ return _executeGetRequest("form/"+formID+"/properties/"+propertyKey)
93
+ end
94
+
95
+
96
+ def getFormSubmissions(formID)
97
+ return _executeGetRequest("form/"+ formID +"/submissions")
98
+ end
99
+
100
+ def getFormFiles(formID)
101
+ return _executeGetRequest("form/"+formID+"/files")
102
+ end
103
+
104
+ def getFormWebhooks(formID)
105
+ return _executeGetRequest("form/"+formID+"/webhooks")
106
+ end
107
+
108
+ def getSubmission(sid)
109
+ return _executeGetRequest("submission/"+sid)
110
+ end
111
+
112
+ def getReport(reportID)
113
+ return _executeGetRequest("report/"+reportID)
114
+ end
115
+
116
+ def getFolder(folderID)
117
+ return _executeGetRequest("folder/"+folderID)
118
+ end
119
+
120
+ def createFormWebhook(formID, webhookURL)
121
+ return _executePostRequest("form/"+formID+"/webhooks",{"webhookURL" => webhookURL} );
122
+ end
123
+
124
+ def createFormSubmissions(formID, submission)
125
+ return _executePostRequest("form/"+ formID +"/submissions", submission);
126
+ end
127
+
128
+ def self.hi(language)
129
+ translator = Translator.new(language)
130
+ translator.hi
131
+ end
132
+ end
133
+
134
+ require "net/http"
135
+ require "uri"
136
+ require "rubygems"
137
+ require "json"
138
+ require 'jotform/translator'
@@ -0,0 +1,5 @@
1
+ require 'test/unit'
2
+ require 'jotform'
3
+
4
+ class JotformTest < Test::Unit::TestCase
5
+ end
metadata ADDED
@@ -0,0 +1,47 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: jotform_api
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Marcelo Miqueles
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2023-08-01 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: This is a gem to access the JotForm API.
14
+ email: marcelo@paperco.de
15
+ executables: []
16
+ extensions: []
17
+ extra_rdoc_files: []
18
+ files:
19
+ - Rakefile
20
+ - bin/jotform
21
+ - lib/jotform.rb
22
+ - test/test_jotform.rb
23
+ homepage: http://rubygems.org/gems/jotform_api
24
+ licenses:
25
+ - MIT
26
+ metadata: {}
27
+ post_install_message:
28
+ rdoc_options: []
29
+ require_paths:
30
+ - lib
31
+ required_ruby_version: !ruby/object:Gem::Requirement
32
+ requirements:
33
+ - - ">="
34
+ - !ruby/object:Gem::Version
35
+ version: '2.6'
36
+ required_rubygems_version: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ requirements: []
42
+ rubygems_version: 3.4.17
43
+ signing_key:
44
+ specification_version: 3
45
+ summary: jotform!
46
+ test_files:
47
+ - test/test_jotform.rb