Class: GoPhish::Api
- Inherits:
-
Object
- Object
- GoPhish::Api
- Defined in:
- lib/gophish/api.rb
Instance Method Summary collapse
- #create_campaign(conf = {}) ⇒ Object
- #create_group(conf = {}) ⇒ Object
- #create_page(conf = {}) ⇒ Object
- #create_smtp(conf = {}) ⇒ Object
- #create_template(conf = {}) ⇒ Object
- #delete_campaign(id) ⇒ Object
- #delete_group(id) ⇒ Object
- #delete_page(id) ⇒ Object
- #delete_smtp(id) ⇒ Object
- #delete_template(id) ⇒ Object
- #get_campaign(id) ⇒ Object
- #get_campaigns ⇒ Object
- #get_group(id) ⇒ Object
- #get_groups ⇒ Object
- #get_page(id) ⇒ Object
- #get_pages ⇒ Object
- #get_smtp(id) ⇒ Object
- #get_smtps ⇒ Object
- #get_template(id) ⇒ Object
- #get_templates ⇒ Object
-
#initialize(url, key) ⇒ Api
constructor
A new instance of Api.
Constructor Details
#initialize(url, key) ⇒ Api
Returns a new instance of Api.
5 6 7 8 |
# File 'lib/gophish/api.rb', line 5 def initialize(url, key) @url = url @key = key end |
Instance Method Details
#create_campaign(conf = {}) ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'lib/gophish/api.rb', line 22 def create_campaign(conf = {}) conf = JSON conf uri = URI.parse(@url + '/api/campaigns/?api_key=' + @key) headers = { 'Content-Type': 'text/json' } http = Net::HTTP.new(uri.host, uri.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Post.new(uri.request_uri, headers) request.body = conf res = http.request(request) JSON res end |
#create_group(conf = {}) ⇒ Object
96 97 98 99 100 101 102 103 104 105 106 107 108 109 |
# File 'lib/gophish/api.rb', line 96 def create_group(conf = {}) conf = JSON conf uri = URI.parse(@url + '/api/groups/?api_key=' + @key) headers = { 'Content-Type': 'text/json' } http = Net::HTTP.new(uri.host, uri.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Post.new(uri.request_uri, headers) request.body = conf res = http.request(request) JSON res end |
#create_page(conf = {}) ⇒ Object
170 171 172 173 174 175 176 177 178 179 180 181 182 183 |
# File 'lib/gophish/api.rb', line 170 def create_page(conf = {}) conf = JSON conf uri = URI.parse(@url + '/api/pages/?api_key=' + @key) headers = { 'Content-Type': 'text/json' } http = Net::HTTP.new(uri.host, uri.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Post.new(uri.request_uri, headers) request.body = conf res = http.request(request) JSON res end |
#create_smtp(conf = {}) ⇒ Object
133 134 135 136 137 138 139 140 141 142 143 144 145 146 |
# File 'lib/gophish/api.rb', line 133 def create_smtp(conf = {}) conf = JSON conf uri = URI.parse(@url + '/api/smtps/?api_key=' + @key) headers = { 'Content-Type': 'text/json' } http = Net::HTTP.new(uri.host, uri.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Post.new(uri.request_uri, headers) request.body = conf res = http.request(request) JSON res end |
#create_template(conf = {}) ⇒ Object
59 60 61 62 63 64 65 66 67 68 69 70 71 72 |
# File 'lib/gophish/api.rb', line 59 def create_template(conf = {}) conf = JSON conf uri = URI.parse(@url + '/api/templates/?api_key=' + @key) headers = { 'Content-Type': 'text/json' } http = Net::HTTP.new(uri.host, uri.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Post.new(uri.request_uri, headers) request.body = conf res = http.request(request) JSON res end |
#delete_campaign(id) ⇒ Object
37 38 39 40 41 42 43 44 45 |
# File 'lib/gophish/api.rb', line 37 def delete_campaign(id) uri = URI.parse(@url + "/api/campaigns/#{id}?api_key=" + @key) http = Net::HTTP.new(uri.host, uri.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE req = Net::HTTP::Delete.new(uri.request_uri) res = http.request(req) JSON res end |
#delete_group(id) ⇒ Object
111 112 113 114 115 116 117 118 119 |
# File 'lib/gophish/api.rb', line 111 def delete_group(id) uri = URI.parse(@url + "/api/groups/#{id}?api_key=" + @key) http = Net::HTTP.new(uri.host, uri.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE req = Net::HTTP::Delete.new(uri.request_uri) res = http.request(req) JSON res end |
#delete_page(id) ⇒ Object
185 186 187 188 189 190 191 192 193 |
# File 'lib/gophish/api.rb', line 185 def delete_page(id) uri = URI.parse(@url + "/api/pages/#{id}?api_key=" + @key) http = Net::HTTP.new(uri.host, uri.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE req = Net::HTTP::Delete.new(uri.request_uri) res = http.request(req) JSON res end |
#delete_smtp(id) ⇒ Object
148 149 150 151 152 153 154 155 156 |
# File 'lib/gophish/api.rb', line 148 def delete_smtp(id) uri = URI.parse(@url + "/api/smtps/#{id}?api_key=" + @key) http = Net::HTTP.new(uri.host, uri.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE req = Net::HTTP::Delete.new(uri.request_uri) res = http.request(req) JSON res end |
#delete_template(id) ⇒ Object
74 75 76 77 78 79 80 81 82 |
# File 'lib/gophish/api.rb', line 74 def delete_template(id) uri = URI.parse(@url + "/api/templates/#{id}?api_key=" + @key) http = Net::HTTP.new(uri.host, uri.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE req = Net::HTTP::Delete.new(uri.request_uri) res = http.request(req) JSON res end |
#get_campaign(id) ⇒ Object
16 17 18 19 20 |
# File 'lib/gophish/api.rb', line 16 def get_campaign(id) uri = @url + "/api/campaigns/#{id}?api_key=" + @key res = open(uri, ssl_verify_mode: OpenSSL::SSL::VERIFY_NONE).read JSON res end |
#get_campaigns ⇒ Object
10 11 12 13 14 |
# File 'lib/gophish/api.rb', line 10 def get_campaigns uri = @url + '/api/campaigns?api_key=' + @key res = open(uri, ssl_verify_mode: OpenSSL::SSL::VERIFY_NONE).read JSON res end |
#get_group(id) ⇒ Object
90 91 92 93 94 |
# File 'lib/gophish/api.rb', line 90 def get_group(id) uri = @url + "/api/groups/#{id}?api_key=" + @key res = open(uri, ssl_verify_mode: OpenSSL::SSL::VERIFY_NONE).read JSON res end |
#get_groups ⇒ Object
84 85 86 87 88 |
# File 'lib/gophish/api.rb', line 84 def get_groups uri = @url + '/api/groups?api_key=' + @key res = open(uri, ssl_verify_mode: OpenSSL::SSL::VERIFY_NONE).read JSON res end |
#get_page(id) ⇒ Object
164 165 166 167 168 |
# File 'lib/gophish/api.rb', line 164 def get_page(id) uri = @url + "/api/pages/#{id}?api_key=" + @key res = open(uri, ssl_verify_mode: OpenSSL::SSL::VERIFY_NONE).read JSON res end |
#get_pages ⇒ Object
158 159 160 161 162 |
# File 'lib/gophish/api.rb', line 158 def get_pages uri = @url + '/api/pages?api_key=' + @key res = open(uri, ssl_verify_mode: OpenSSL::SSL::VERIFY_NONE).read JSON res end |
#get_smtp(id) ⇒ Object
127 128 129 130 131 |
# File 'lib/gophish/api.rb', line 127 def get_smtp(id) uri = @url + "/api/smtps/#{id}?api_key=" + @key res = open(uri, ssl_verify_mode: OpenSSL::SSL::VERIFY_NONE).read JSON res end |
#get_smtps ⇒ Object
121 122 123 124 125 |
# File 'lib/gophish/api.rb', line 121 def get_smtps uri = @url + '/api/smtp?api_key=' + @key res = open(uri, ssl_verify_mode: OpenSSL::SSL::VERIFY_NONE).read JSON res end |
#get_template(id) ⇒ Object
53 54 55 56 57 |
# File 'lib/gophish/api.rb', line 53 def get_template(id) uri = @url + "/api/templates/#{id}?api_key=" + @key res = open(uri, ssl_verify_mode: OpenSSL::SSL::VERIFY_NONE).read JSON res end |
#get_templates ⇒ Object
47 48 49 50 51 |
# File 'lib/gophish/api.rb', line 47 def get_templates uri = @url + '/api/templates?api_key=' + @key res = open(uri, ssl_verify_mode: OpenSSL::SSL::VERIFY_NONE).read JSON res end |