adzerk 0.1.4 → 0.2

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.
Files changed (51) hide show
  1. data/lib/adzerk.rb +15 -0
  2. data/lib/adzerk/advertiser.rb +9 -0
  3. data/lib/adzerk/api_endpoint.rb +41 -0
  4. data/lib/adzerk/channel_site_map.rb +53 -0
  5. data/lib/adzerk/client.rb +80 -0
  6. data/lib/adzerk/creative.rb +17 -0
  7. data/lib/adzerk/creative_map.rb +38 -0
  8. data/lib/adzerk/flight.rb +12 -0
  9. data/lib/adzerk/invitation.rb +23 -0
  10. data/lib/adzerk/publisher.rb +17 -0
  11. data/lib/adzerk/reporting.rb +21 -0
  12. data/lib/adzerk/util.rb +37 -0
  13. data/lib/adzerk/version.rb +3 -0
  14. data/test/advertiser_api_spec.rb +57 -82
  15. data/test/campaign_api_spec.rb +150 -271
  16. data/test/channel_api_spec.rb +72 -79
  17. data/test/channel_site_map_api_spec.rb +43 -94
  18. data/test/creative_api_spec.rb +82 -251
  19. data/test/creative_map_api_spec.rb +291 -375
  20. data/test/flight_api_spec.rb +165 -493
  21. data/test/invitation_api_spec.rb +18 -41
  22. data/test/login_api_spec.rb +24 -49
  23. data/test/priority_api_spec.rb +53 -83
  24. data/test/publisher_api_spec.rb +71 -142
  25. data/test/rakefile.rb +7 -7
  26. data/test/report_api_spec.rb +18 -24
  27. data/test/security_api_spec.rb +21 -0
  28. data/test/site_api_spec.rb +37 -51
  29. data/test/spec_helper.rb +4 -17
  30. data/test/zone_api_spec.rb +38 -64
  31. metadata +61 -23
  32. data/lib/Adzerk.rb +0 -55
  33. data/lib/adzerk/Advertiser.rb +0 -39
  34. data/lib/adzerk/Campaign.rb +0 -33
  35. data/lib/adzerk/Channel.rb +0 -33
  36. data/lib/adzerk/ChannelSiteMap.rb +0 -44
  37. data/lib/adzerk/Creative.rb +0 -43
  38. data/lib/adzerk/CreativeMap.rb +0 -33
  39. data/lib/adzerk/Flight.rb +0 -44
  40. data/lib/adzerk/Invitation.rb +0 -17
  41. data/lib/adzerk/Login.rb +0 -28
  42. data/lib/adzerk/Priority.rb +0 -34
  43. data/lib/adzerk/Publisher.rb +0 -47
  44. data/lib/adzerk/Reporting.rb +0 -16
  45. data/lib/adzerk/Site.rb +0 -35
  46. data/lib/adzerk/Zone.rb +0 -35
  47. data/test/channel_api_security_spec.rb +0 -51
  48. data/test/csv_export_spec.rb +0 -89
  49. data/test/delivery-test.rb +0 -132
  50. data/test/test.rb +0 -43
  51. data/test/test2.rb +0 -175
@@ -1,55 +0,0 @@
1
- require "json"
2
- require "net/http"
3
- require "rest_client"
4
-
5
- module Adzerk
6
-
7
- @@header = 'X-Adzerk-ApiKey'
8
- $host = ENV["ADZERK_API_HOST"] || 'http://api.adzerk.net/v1/'
9
-
10
- def self.new(key)
11
- @@api_key = key
12
- return self
13
- end
14
-
15
- def self.api_key()
16
- @@api_key
17
- end
18
-
19
- def self.get_request(uri)
20
- http = Net::HTTP.new(uri.host, uri.port)
21
- request = Net::HTTP::Get.new(uri.request_uri)
22
- request.add_field @@header, @@api_key
23
- http.request(request)
24
- end
25
-
26
- def self.post_request(uri, data)
27
- http = Net::HTTP.new(uri.host, uri.port)
28
- request = Net::HTTP::Post.new(uri.request_uri)
29
- request.add_field @@header, @@api_key
30
- request.set_form_data(data)
31
- http.request(request)
32
- end
33
-
34
- def self.put_request(uri, data)
35
- http = Net::HTTP.new(uri.host, uri.port)
36
- request = Net::HTTP::Put.new(uri.request_uri)
37
- request.add_field @@header, @@api_key
38
- request.set_form_data(data)
39
- http.request(request)
40
- end
41
-
42
- def self.uploadCreative(id, imagepath)
43
- begin
44
- image = File.new(imagepath, 'rb')
45
- rescue
46
- image = ''
47
- end
48
-
49
- RestClient.post $host + 'creative/' + id.to_s + '/upload',
50
- {:image => image},
51
- "X-Adzerk-ApiKey" => Adzerk.api_key,
52
- :accept => :mime
53
- end
54
-
55
- end
@@ -1,39 +0,0 @@
1
- module Adzerk
2
- class Advertiser
3
-
4
- def create(data={})
5
- uri = URI.parse($host + 'advertiser')
6
- data = { 'advertiser' => data.to_json }
7
- Adzerk.post_request(uri, data)
8
- end
9
-
10
- def get(id)
11
- uri = URI.parse($host + 'advertiser/' + id)
12
- Adzerk.get_request(uri)
13
- end
14
-
15
- def list()
16
- uri = URI.parse($host + 'advertiser')
17
- response = Adzerk.get_request(uri)
18
- JSON.parse(response.body)
19
- end
20
-
21
- def update(data={})
22
- uri = URI.parse($host + 'advertiser/' + data["Id"].to_s)
23
- data = { 'advertiser' => data.to_json }
24
- Adzerk.put_request(uri, data)
25
- end
26
-
27
- def delete(id)
28
- uri = URI.parse($host + 'advertiser/' + id.to_s + '/delete')
29
- Adzerk.get_request(uri)
30
- end
31
-
32
- def search(advertiserName)
33
- uri = URI.parse($host + 'advertiser/search')
34
- data = { 'advertiserName' => advertiserName }
35
- Adzerk.post_request(uri, data)
36
- end
37
-
38
- end
39
- end
@@ -1,33 +0,0 @@
1
- module Adzerk
2
- class Campaign
3
-
4
- def create(data={})
5
- uri = URI.parse($host + 'campaign')
6
- data = { 'campaign' => data.to_json }
7
- Adzerk.post_request(uri, data)
8
- end
9
-
10
- def get(id)
11
- uri = URI.parse($host + 'campaign/' + id)
12
- Adzerk.get_request(uri)
13
- end
14
-
15
- def list()
16
- uri = URI.parse($host + 'campaign')
17
- response = Adzerk.get_request(uri)
18
- JSON.parse(response.body)
19
- end
20
-
21
- def update(data={})
22
- uri = URI.parse($host + 'campaign/' + data["Id"].to_s)
23
- data = { 'campaign' => data.to_json }
24
- Adzerk.put_request(uri, data)
25
- end
26
-
27
- def delete(id)
28
- uri = URI.parse($host + 'campaign/' + id + '/delete')
29
- Adzerk.get_request(uri)
30
- end
31
-
32
- end
33
- end
@@ -1,33 +0,0 @@
1
- module Adzerk
2
- class Channel
3
-
4
- def create(data={})
5
- uri = URI.parse($host + 'channel')
6
- data = { 'channel' => data.to_json }
7
- Adzerk.post_request(uri, data)
8
- end
9
-
10
- def get(id)
11
- uri = URI.parse($host + 'channel/' + id)
12
- Adzerk.get_request(uri)
13
- end
14
-
15
- def list()
16
- uri = URI.parse($host + 'channel')
17
- response = Adzerk.get_request(uri)
18
- JSON.parse(response.body)
19
- end
20
-
21
- def update(data={})
22
- uri = URI.parse($host + 'channel/' + data["Id"].to_s)
23
- data = { 'channel' => data.to_json }
24
- Adzerk.put_request(uri, data)
25
- end
26
-
27
- def delete(id)
28
- uri = URI.parse($host + 'channel/' + id + '/delete')
29
- Adzerk.get_request(uri)
30
- end
31
-
32
- end
33
- end
@@ -1,44 +0,0 @@
1
- module Adzerk
2
- class ChannelSiteMap
3
-
4
- def create(data={})
5
- uri = URI.parse($host + 'channelSite')
6
- data = { 'channelSite' => data.to_json }
7
- Adzerk.post_request(uri, data)
8
- end
9
-
10
- def get(channelId, siteId)
11
- uri = URI.parse($host + 'channel/' + channelId.to_s + '/site/' + siteId.to_s)
12
- Adzerk.get_request(uri)
13
- end
14
-
15
- def list()
16
- uri = URI.parse($host + 'channelSite')
17
- response = Adzerk.get_request(uri)
18
- JSON.parse(response.body)
19
- end
20
-
21
- def update(data={})
22
- uri = URI.parse($host + 'channelSite')
23
- data = { 'channelSite' => data.to_json }
24
- Adzerk.put_request(uri, data)
25
- end
26
-
27
- def delete(channelId, siteId)
28
- uri = URI.parse($host + 'channel/' + channelId.to_s + '/site/'+ siteId.to_s + '/delete')
29
- Adzerk.get_request(uri)
30
- end
31
-
32
- def sitesInChannel(channelId)
33
- uri = URI.parse($host + 'sitesInChannel/' + channelId.to_s)
34
- Adzerk.get_request(uri)
35
- end
36
-
37
- def channelsInSite(siteId)
38
- uri = URI.parse($host + 'channelsInSite/' + siteId.to_s)
39
- Adzerk.get_request(uri)
40
- end
41
-
42
- end
43
- end
44
-
@@ -1,43 +0,0 @@
1
- require "rest_client"
2
-
3
- module Adzerk
4
- class Creative
5
-
6
- def create(data={}, imagepath='')
7
- #uri = URI.parse($host + "creative/")
8
- #data = { 'creative' => data.to_json }
9
- #response = Adzerk.post_request(uri, data)
10
-
11
- response = RestClient.post $host + 'creative',
12
- {:creative => data.to_json},
13
- :X_Adzerk_ApiKey => Adzerk.api_key,
14
- :content_type => :json,
15
- :accept => :json
16
-
17
- Adzerk.uploadCreative(JSON.parse(response)["Id"], imagepath)
18
- end
19
-
20
- def get(id)
21
- uri = URI.parse($host + 'creative/' + id)
22
- Adzerk.get_request(uri)
23
- end
24
-
25
- def list(advertiserId)
26
- uri = URI.parse($host + 'advertiser/' + advertiserId.to_s + "/creatives")
27
- response = Adzerk.get_request(uri)
28
- JSON.parse(response.body)
29
- end
30
-
31
- def update(data={})
32
- uri = URI.parse($host + 'creative/' + data["Id"].to_s)
33
- data = { 'creative' => data.to_json }
34
- Adzerk.put_request(uri, data)
35
- end
36
-
37
- def delete(id)
38
- uri = URI.parse($host + 'creative/' + id + '/delete')
39
- Adzerk.get_request(uri)
40
- end
41
-
42
- end
43
- end
@@ -1,33 +0,0 @@
1
- module Adzerk
2
- class CreativeMap
3
-
4
- def create(data={})
5
- uri = URI.parse($host + "flight/" + data["FlightId"].to_s + '/creative')
6
- data = { 'creative' => data.to_json }
7
- Adzerk.post_request(uri, data)
8
- end
9
-
10
- def get(id, flightId)
11
- uri = URI.parse($host + "flight/" + flightId.to_s + '/creative/' + id.to_s)
12
- Adzerk.get_request(uri)
13
- end
14
-
15
- def list(flightId)
16
- uri = URI.parse($host + 'flight/' + flightId.to_s + "/creatives")
17
- response = Adzerk.get_request(uri)
18
- JSON.parse(response.body)
19
- end
20
-
21
- def update(data={})
22
- uri = URI.parse($host + "flight/" + data["FlightId"].to_s + '/creative/' + data["Id"].to_s)
23
- data = { 'creative' => data.to_json }
24
- Adzerk.put_request(uri, data)
25
- end
26
-
27
- def delete(id, flightId)
28
- uri = URI.parse($host + "flight/" + flightId.to_s + '/creative/' + id.to_s + '/delete')
29
- Adzerk.get_request(uri)
30
- end
31
-
32
- end
33
- end
@@ -1,44 +0,0 @@
1
- module Adzerk
2
- class Flight
3
-
4
- def create(data={})
5
- uri = URI.parse($host + 'flight')
6
- data = { 'flight' => data.to_json }
7
- Adzerk.post_request(uri, data)
8
- end
9
-
10
- def get(id)
11
- uri = URI.parse($host + 'flight/' + id)
12
- Adzerk.get_request(uri)
13
- end
14
-
15
- def list()
16
- uri = URI.parse($host + 'flight')
17
- response = Adzerk.get_request(uri)
18
- JSON.parse(response.body)
19
- end
20
-
21
- def update(data={})
22
- uri = URI.parse($host + 'flight/' + data["Id"].to_s)
23
- data = { 'flight' => data.to_json }
24
- Adzerk.put_request(uri, data)
25
- end
26
-
27
- def delete(id)
28
- uri = URI.parse($host + 'flight/' + id + '/delete')
29
- Adzerk.get_request(uri)
30
- end
31
-
32
- def countries()
33
- uri = URI.parse($host + 'countries')
34
- Adzerk.get_request(uri)
35
- end
36
-
37
- def regions(region)
38
- uri = URI.parse($host + 'region/' + region)
39
- Adzerk.get_request(uri)
40
- end
41
-
42
-
43
- end
44
- end
@@ -1,17 +0,0 @@
1
- module Adzerk
2
- class Invitation
3
-
4
- def invite_publisher(data={})
5
- uri = URI.parse($host + 'invite-publisher')
6
- data = { 'invitation' => data.to_json }
7
- Adzerk.post_request(uri, data)
8
- end
9
-
10
- def invite_advertiser(data={})
11
- uri = URI.parse($host + 'invite-advertiser')
12
- data = { 'invitation' => data.to_json }
13
- Adzerk.post_request(uri, data)
14
- end
15
-
16
- end
17
- end
@@ -1,28 +0,0 @@
1
- module Adzerk
2
- class Login
3
-
4
- def create(data={})
5
- uri = URI.parse($host + 'login')
6
- data = { 'login' => data.to_json }
7
- Adzerk.post_request(uri, data)
8
- end
9
-
10
- def get(id)
11
- uri = URI.parse($host + 'login/' + id)
12
- Adzerk.get_request(uri)
13
- end
14
-
15
- def list()
16
- uri = URI.parse($host + 'login')
17
- response = Adzerk.get_request(uri)
18
- JSON.parse(response.body)
19
- end
20
-
21
- def update(data={})
22
- uri = URI.parse($host + 'login/' + data["Id"].to_s)
23
- data = { 'login' => data.to_json }
24
- Adzerk.put_request(uri, data)
25
- end
26
-
27
- end
28
- end
@@ -1,34 +0,0 @@
1
- module Adzerk
2
- class Priority
3
-
4
- def create(data={})
5
- uri = URI.parse($host + 'priority')
6
- data = { 'priority' => data.to_json }
7
- Adzerk.post_request(uri, data)
8
- end
9
-
10
- def get(id)
11
- uri = URI.parse($host + 'priority/' + id.to_s)
12
- Adzerk.get_request(uri)
13
- end
14
-
15
- def list()
16
- uri = URI.parse($host + 'priority')
17
- response = Adzerk.get_request(uri)
18
- JSON.parse(response.body)
19
- end
20
-
21
- def update(data={})
22
- uri = URI.parse($host + 'priority/' + data["Id"].to_s)
23
- data = { 'priority' => data.to_json }
24
- Adzerk.put_request(uri, data)
25
- end
26
-
27
- def delete(id)
28
- uri = URI.parse($host + 'priority/' + id + '/delete')
29
- Adzerk.get_request(uri)
30
- end
31
-
32
- end
33
- end
34
-
@@ -1,47 +0,0 @@
1
- module Adzerk
2
- class Publisher
3
-
4
- def create(data={})
5
- uri = URI.parse($host + 'publisher')
6
- data = { 'publisher' => data.to_json }
7
- Adzerk.post_request(uri, data)
8
- end
9
-
10
- def get(id)
11
- uri = URI.parse($host + 'publisher/' + id)
12
- Adzerk.get_request(uri)
13
- end
14
-
15
- def list()
16
- uri = URI.parse($host + 'publisher')
17
- response = Adzerk.get_request(uri)
18
- JSON.parse(response.body)
19
- end
20
-
21
- def update(data={})
22
- uri = URI.parse($host + 'publisher/' + data["Id"].to_s)
23
- data = { 'publisher' => data.to_json }
24
- Adzerk.put_request(uri, data)
25
- end
26
-
27
- def delete(id)
28
- uri = URI.parse($host + 'publisher/' + id + '/delete')
29
- Adzerk.get_request(uri)
30
- end
31
-
32
- def earnings(data={})
33
- uri = URI.parse($host + '/earnings')
34
- data = { 'earnings' => data.to_json }
35
- response = Adzerk.post_request(uri, data)
36
- JSON.parse(response.body)
37
- end
38
-
39
- def payments(data={})
40
- uri = URI.parse($host + '/payments')
41
- data = { 'payments' => data.to_json }
42
- response = Adzerk.post_request(uri, data)
43
- JSON.parse(response.body)
44
- end
45
-
46
- end
47
- end