bwapi 12.1.0.pre.677 → 13.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 +5 -13
- data/Rakefile +49 -0
- data/bwapi.gemspec +8 -6
- data/lib/bwapi/client/admin.rb +2 -0
- data/lib/bwapi/client/admin/integrations.rb +25 -0
- data/lib/bwapi/client/oauth.rb +2 -2
- data/lib/bwapi/client/projects.rb +4 -0
- data/lib/bwapi/client/projects/decahose_queries.rb +85 -0
- data/lib/bwapi/client/projects/preview_search.rb +162 -3
- data/lib/bwapi/client/projects/research.rb +29 -0
- data/lib/bwapi/response/error.rb +1 -1
- data/lib/bwapi/version.rb +1 -1
- data/spec/bwapi/configuration_spec.rb +3 -3
- data/spec/bwapi/default_spec.rb +3 -3
- metadata +69 -30
- data/.travis.yml +0 -29
checksums.yaml
CHANGED
@@ -1,15 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
|
5
|
-
data.tar.gz: !binary |-
|
6
|
-
MmJkNzZmODcyZjhhNTMzMGQ5MTQ3MjVjYmEwYjFkMjhmYzFiY2YzYQ==
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: ea2608753b48a1c474cb5610cda93ac34b113957
|
4
|
+
data.tar.gz: f7ad3a97b9bbe4e8cee18e4c896b975036c7cec3
|
7
5
|
SHA512:
|
8
|
-
metadata.gz:
|
9
|
-
|
10
|
-
NmZjYzM3NGJkMDJhYzQzYzY3MTljNWI4NjE4NzM3MDZlNGM4YWFjZGI1MjMx
|
11
|
-
MzgwMjg2MTI1NDcxMDI1YjYzN2QyODBmMTdmMGZlYzA2ZDg2NGI=
|
12
|
-
data.tar.gz: !binary |-
|
13
|
-
NDI5NTZhMDQxMjQ1MGI4NjFkYWFiNWQ4ZmEwYjI3ZTg3OWYzOTI2ODhkYzYx
|
14
|
-
YTVlYzE1ZjMyNDE0YTAwNDFkYzEyMzU3ZDA0NGIxOGU4Y2ExOGY4OWI5ZDBk
|
15
|
-
MWI1NzMwMjJlYTcyNmM5MDgwODdlMTRhZGQ5OWUxZTZhODJiMTI=
|
6
|
+
metadata.gz: d30858bcdaf3e1617b8a1559735918fd160a701e1888882886f47110349644ec5d9a9547b6110081448d4e7c4d08f32e831a6c2495354d49485a91c100cea530
|
7
|
+
data.tar.gz: ffad013bde9afbf11b2afa49716995a348d58580c52b29b7293c0ac5ab041de2665f74ea42da30cba8f5caef830704404648378c4bac1a5acab078811a6dd35f
|
data/Rakefile
ADDED
@@ -0,0 +1,49 @@
|
|
1
|
+
require 'rake'
|
2
|
+
require 'bundler'
|
3
|
+
Bundler.setup
|
4
|
+
|
5
|
+
require 'yard'
|
6
|
+
YARD::Rake::YardocTask.new do |t|
|
7
|
+
t.files = ['lib/**/*.rb', 'lib/**/**/*.rb']
|
8
|
+
t.options = %w(--list-undoc)
|
9
|
+
end
|
10
|
+
|
11
|
+
require 'rubocop/rake_task'
|
12
|
+
RuboCop::RakeTask.new(:rubocop) do |task|
|
13
|
+
task.formatters = ['progress']
|
14
|
+
task.patterns = ['lib/**/*.rb']
|
15
|
+
end
|
16
|
+
|
17
|
+
desc 'Build the gem locally'
|
18
|
+
task :build do
|
19
|
+
system 'gem build bwapi.gemspec'
|
20
|
+
end
|
21
|
+
|
22
|
+
desc 'Install the gem locally'
|
23
|
+
task :install do
|
24
|
+
system 'gem install bwapi-*.gem'
|
25
|
+
end
|
26
|
+
|
27
|
+
desc 'Build and release the gem to argus'
|
28
|
+
task release: :build do
|
29
|
+
system 'gem inabox bwapi-*.gem'
|
30
|
+
end
|
31
|
+
|
32
|
+
desc 'Release a pre release of the gem'
|
33
|
+
task :pre_release do
|
34
|
+
ENV['PRE_RELEASE'] = 'true'
|
35
|
+
system 'gem build *.gemspec'
|
36
|
+
system 'gem inabox *.gem'
|
37
|
+
end
|
38
|
+
|
39
|
+
desc 'Running rubocop'
|
40
|
+
task :rubocop do
|
41
|
+
%w(rubocop)
|
42
|
+
end
|
43
|
+
|
44
|
+
desc 'Runing rspec for the project'
|
45
|
+
task :spec do
|
46
|
+
system 'rspec'
|
47
|
+
end
|
48
|
+
|
49
|
+
task default: %w(rubocop spec)
|
data/bwapi.gemspec
CHANGED
@@ -4,18 +4,20 @@ require File.dirname(__FILE__) + '/lib/bwapi/version'
|
|
4
4
|
Gem::Specification.new do |s|
|
5
5
|
s.name = 'bwapi'
|
6
6
|
s.version = BWAPI::VERSION
|
7
|
-
s.version = BWAPI::VERSION + ".pre.#{ENV['
|
7
|
+
s.version = BWAPI::VERSION + ".pre.#{ENV['BUILD_NUMBER']}" if ENV['PRE_RELEASE']
|
8
8
|
s.date = Date.today.to_s
|
9
9
|
s.summary = 'Brandwatch API Wrapper'
|
10
10
|
s.description = 'A Ruby wrapper for the Brandwatch API'
|
11
|
-
s.author = '
|
12
|
-
s.email = '
|
11
|
+
s.author = `git log --all --format='%aN' | sort -u`.split("\n")
|
12
|
+
s.email = 'automation@brandwatch.com'
|
13
13
|
s.license = 'MIT'
|
14
|
-
s.homepage = 'https://github.com/
|
15
|
-
s.required_ruby_version = '>=
|
14
|
+
s.homepage = 'https://github.com/BrandwatchLtd/bwapi'
|
15
|
+
s.required_ruby_version = '>= 2.0.0'
|
16
16
|
|
17
17
|
s.add_development_dependency 'rspec', '~> 3.0'
|
18
|
-
s.add_development_dependency 'rubocop', '~> 0.
|
18
|
+
s.add_development_dependency 'rubocop', '~> 0.34.2'
|
19
|
+
s.add_development_dependency 'yard', '~> 0.9.0'
|
20
|
+
s.add_development_dependency 'geminabox', '~> 0.13.1'
|
19
21
|
|
20
22
|
s.add_runtime_dependency 'allotment', '~> 1.1'
|
21
23
|
s.add_runtime_dependency 'faraday', '~> 0.9'
|
data/lib/bwapi/client/admin.rb
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
require 'bwapi/client/admin/become'
|
2
2
|
require 'bwapi/client/admin/clients'
|
3
3
|
require 'bwapi/client/admin/demographics'
|
4
|
+
require 'bwapi/client/admin/integrations'
|
4
5
|
require 'bwapi/client/admin/reseller'
|
5
6
|
require 'bwapi/client/admin/search'
|
6
7
|
require 'bwapi/client/admin/client'
|
@@ -33,6 +34,7 @@ module BWAPI
|
|
33
34
|
include BWAPI::Client::Admin::Clients
|
34
35
|
include BWAPI::Client::Admin::Client
|
35
36
|
include BWAPI::Client::Admin::Demographics
|
37
|
+
include BWAPI::Client::Admin::Integrations
|
36
38
|
include BWAPI::Client::Admin::Reseller
|
37
39
|
include BWAPI::Client::Admin::Search
|
38
40
|
include BWAPI::Client::Admin::PricingUpgrades
|
@@ -0,0 +1,25 @@
|
|
1
|
+
module BWAPI
|
2
|
+
class Client
|
3
|
+
module Admin
|
4
|
+
# Integrations module for admin/integrations endpoints
|
5
|
+
module Integrations
|
6
|
+
# Get all jwt integrations
|
7
|
+
#
|
8
|
+
# @param opts [Hash] options hash of parameters
|
9
|
+
# @option opts [Integer] page Page of results to retrieve
|
10
|
+
# @option opts [Integer] pageSize Results per page of results
|
11
|
+
# @return [Hash] All research projects
|
12
|
+
def get_jwt_integrations(opts = {})
|
13
|
+
get 'admin/integrations/jwt', opts
|
14
|
+
end
|
15
|
+
|
16
|
+
# Create new jwt integration
|
17
|
+
#
|
18
|
+
# @return [Hash] New jwt integration
|
19
|
+
def create_jwt_integration(opts = {})
|
20
|
+
post 'admin/integrations/jwt', opts
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
data/lib/bwapi/client/oauth.rb
CHANGED
@@ -23,7 +23,7 @@ module BWAPI
|
|
23
23
|
|
24
24
|
oauth_request opts
|
25
25
|
end
|
26
|
-
|
26
|
+
alias_method :login, :oauth_token
|
27
27
|
|
28
28
|
# Refresh a authenticated users oauth_token
|
29
29
|
#
|
@@ -46,7 +46,7 @@ module BWAPI
|
|
46
46
|
|
47
47
|
oauth_request opts
|
48
48
|
end
|
49
|
-
|
49
|
+
alias_method :refresh, :oauth_refresh_token
|
50
50
|
|
51
51
|
# Determines grant-type used for client
|
52
52
|
#
|
@@ -5,6 +5,7 @@ require 'bwapi/client/projects/data'
|
|
5
5
|
require 'bwapi/client/projects/data_download'
|
6
6
|
require 'bwapi/client/projects/demographics'
|
7
7
|
require 'bwapi/client/projects/ditto_queries'
|
8
|
+
require 'bwapi/client/projects/decahose_queries'
|
8
9
|
require 'bwapi/client/projects/facebook_queries'
|
9
10
|
require 'bwapi/client/projects/group'
|
10
11
|
require 'bwapi/client/projects/instagram_queries'
|
@@ -12,6 +13,7 @@ require 'bwapi/client/projects/preview_search'
|
|
12
13
|
require 'bwapi/client/projects/queries'
|
13
14
|
require 'bwapi/client/projects/query/mentionfind'
|
14
15
|
require 'bwapi/client/projects/query_groups'
|
16
|
+
require 'bwapi/client/projects/research'
|
15
17
|
require 'bwapi/client/projects/rules'
|
16
18
|
require 'bwapi/client/projects/sharing'
|
17
19
|
require 'bwapi/client/projects/signals'
|
@@ -109,6 +111,7 @@ module BWAPI
|
|
109
111
|
include BWAPI::Client::Projects::Data
|
110
112
|
include BWAPI::Client::Projects::DataDownload
|
111
113
|
include BWAPI::Client::Projects::Demographics
|
114
|
+
include BWAPI::Client::Projects::DecahoseQueries
|
112
115
|
include BWAPI::Client::Projects::DittoQueries
|
113
116
|
include BWAPI::Client::Projects::FacebookQueries
|
114
117
|
include BWAPI::Client::Projects::Group
|
@@ -117,6 +120,7 @@ module BWAPI
|
|
117
120
|
include BWAPI::Client::Projects::Queries
|
118
121
|
include BWAPI::Client::Projects::Query::MentionFind
|
119
122
|
include BWAPI::Client::Projects::QueryGroups
|
123
|
+
include BWAPI::Client::Projects::Research
|
120
124
|
include BWAPI::Client::Projects::Rules
|
121
125
|
include BWAPI::Client::Projects::Sharing
|
122
126
|
include BWAPI::Client::Projects::Signals
|
@@ -0,0 +1,85 @@
|
|
1
|
+
module BWAPI
|
2
|
+
class Client
|
3
|
+
module Projects
|
4
|
+
# Decahose Queries module for projects/decahosequeries endpoints
|
5
|
+
module DecahoseQueries
|
6
|
+
# Get all decahose queries in project
|
7
|
+
#
|
8
|
+
# @param project_id [Integer] Id of project
|
9
|
+
# @param opts [Hash] options hash of parameters
|
10
|
+
# @option opts [String] nameContains partial name to filter by
|
11
|
+
# @option opts [Integer] page Page of results to retrieve
|
12
|
+
# @option opts [Integer] pageSize Results per page of results
|
13
|
+
# @return [Hash] All queries in project
|
14
|
+
def decahose_queries(project_id, opts = {})
|
15
|
+
get "projects/#{project_id}/decahosequeries", opts
|
16
|
+
end
|
17
|
+
|
18
|
+
# Get a specific decahose query in project
|
19
|
+
#
|
20
|
+
# @param project_id [Integer] Id of project
|
21
|
+
# @param decahose_query_id [Integer] Id of decahose query
|
22
|
+
# @return [Hash] Specific decahose query
|
23
|
+
def get_decahose_query(project_id, decahose_query_id)
|
24
|
+
get "projects/#{project_id}/decahosequeries/#{decahose_query_id}"
|
25
|
+
end
|
26
|
+
|
27
|
+
# Create a new decahose query in project
|
28
|
+
#
|
29
|
+
# @param project_id [Integer] Id of project
|
30
|
+
# @param opts [Hash] options hash of parameters
|
31
|
+
# @option opts [String] id Id of the decahose query
|
32
|
+
# @option opts [String] name Name of the project
|
33
|
+
# @option opts [Integer] dailyLimit Daily limit of the query
|
34
|
+
# @option opts [Integer] twitterLimit Twitter limit of the query
|
35
|
+
# @option opts [Integer] averageMonthlyMentions Average monthly mentions
|
36
|
+
# @option opts [String] type Query type
|
37
|
+
# @option opts [Array] includedTerms Included terms of terms query
|
38
|
+
# @option opts [Array] contextTerms Content terms of the query
|
39
|
+
# @option opts [Array] excludedTerms Excluded terms of thequery
|
40
|
+
# @option opts [Array] languages Query languages
|
41
|
+
# @option opts [String] twitterScreenName Tracked twitter screen name
|
42
|
+
# @option opts [String] industry Industry of the query
|
43
|
+
# @option opts [Date] creationDate Date the query was created on
|
44
|
+
# @option opts [Date] lastModificationDate Mod. date of the query
|
45
|
+
# @return [Hash] New decahose query
|
46
|
+
def create_decahose_query(project_id, opts = {})
|
47
|
+
post "projects/#{project_id}/decahosequeries", opts
|
48
|
+
end
|
49
|
+
|
50
|
+
# Update an existing decahose query in project
|
51
|
+
#
|
52
|
+
# @param project_id [Integer] Id of project
|
53
|
+
# @param query_id [Integer] Id of decahose query
|
54
|
+
# @param opts [Hash] options hash of parameters
|
55
|
+
# @option opts [Integer] id Id of the query
|
56
|
+
# @option opts [String] name Name of the project
|
57
|
+
# @option opts [Integer] dailyLimit Daily limit of the query
|
58
|
+
# @option opts [Integer] twitterLimit Twitter limit of the query
|
59
|
+
# @option opts [Integer] averageMonthlyMentions Average monthly mentions
|
60
|
+
# @option opts [String] type Query type
|
61
|
+
# @option opts [Array] includedTerms Included terms of terms query
|
62
|
+
# @option opts [Array] contextTerms Content terms of the query
|
63
|
+
# @option opts [Array] excludedTerms Excluded terms of thequery
|
64
|
+
# @option opts [Array] languages Query languages
|
65
|
+
# @option opts [String] twitterScreenName Tracked twitter screen name
|
66
|
+
# @option opts [String] industry Industry of the query
|
67
|
+
# @option opts [Date] creationDate Date the query was created on
|
68
|
+
# @option opts [Date] lastModificationDate Mod. date of the query
|
69
|
+
# @return [Hash] Updated query
|
70
|
+
def update_decahose_query(project_id, decahose_query_id, opts = {})
|
71
|
+
put "projects/#{project_id}/decahosequeries/#{decahose_query_id}", opts
|
72
|
+
end
|
73
|
+
|
74
|
+
# Delete an existing decahose query project
|
75
|
+
#
|
76
|
+
# @param project_id [Integer] Id of project
|
77
|
+
# @param query_id [Integer] Id of decahose query
|
78
|
+
# @return [Hash] Deleted decahose query
|
79
|
+
def delete_decahose_query(project_id, decahose_query_id)
|
80
|
+
delete "projects/#{project_id}/decahosequeries/#{decahose_query_id}"
|
81
|
+
end
|
82
|
+
end
|
83
|
+
end
|
84
|
+
end
|
85
|
+
end
|
@@ -5,9 +5,168 @@ module BWAPI
|
|
5
5
|
module PreviewSearch
|
6
6
|
# Create a project preview search for mentions
|
7
7
|
#
|
8
|
-
#
|
9
|
-
|
10
|
-
|
8
|
+
# @param project_id [Integer] Id of project
|
9
|
+
# @param opts [Hash] options hash of parameters
|
10
|
+
# @option opts [String] endDate The mentions end date
|
11
|
+
# @option opts [String] startDate The mentions start date
|
12
|
+
# @option opts [Array] exclusionSnippets The array with snippets exclussion
|
13
|
+
# @option opts [Boolean] languageAgnostic The agnostic language
|
14
|
+
# @option opts [Array] languages The query language
|
15
|
+
# @option opts [String] queryString The query string content
|
16
|
+
# @option opts [String] queryType The query type
|
17
|
+
# @option opts [Integer] resultsPage The results page
|
18
|
+
# @option opts [Integer] resultsPageSize The results page size
|
19
|
+
# @return [Hash] Mentions
|
20
|
+
def project_preview_search_mentions(project_id, opts = {})
|
21
|
+
post "/projects/#{project_id}/previewsearch/mentions", opts
|
22
|
+
end
|
23
|
+
|
24
|
+
# Create a project preview search for author
|
25
|
+
#
|
26
|
+
# @param project_id [Integer] Id of project
|
27
|
+
# @param opts [Hash] options hash of parameters
|
28
|
+
# @option opts [String] author The mentions author
|
29
|
+
# @option opts [String] endDate The mentions end date
|
30
|
+
# @option opts [String] startDate The mentions start date
|
31
|
+
# @option opts [Array] exclusionSnippets The array with snippets exclussion
|
32
|
+
# @option opts [Boolean] languageAgnostic The agnostic language
|
33
|
+
# @option opts [Array] languages The query language
|
34
|
+
# @option opts [String] queryString The query string content
|
35
|
+
# @option opts [String] queryType The query type
|
36
|
+
# @option opts [Integer] resultsPage The results page
|
37
|
+
# @option opts [Integer] resultsPageSize The results page size
|
38
|
+
# @return [Hash] Author
|
39
|
+
def project_preview_search_author(project_id, opts = {})
|
40
|
+
post "/projects/#{project_id}/previewsearch/author", opts
|
41
|
+
end
|
42
|
+
|
43
|
+
# Create a project preview search for daily mentions
|
44
|
+
#
|
45
|
+
# @param project_id [Integer] Id of project
|
46
|
+
# @param opts [Hash] options hash of parameters
|
47
|
+
# @option opts [String] day The mention day
|
48
|
+
# @option opts [String] endDate The mentions end date
|
49
|
+
# @option opts [String] startDate The mentions start date
|
50
|
+
# @option opts [Array] exclusionSnippets The array with snippets exclussion
|
51
|
+
# @option opts [Boolean] languageAgnostic The agnostic language
|
52
|
+
# @option opts [Array] languages The query language
|
53
|
+
# @option opts [String] queryString The query string content
|
54
|
+
# @option opts [String] queryType The query type
|
55
|
+
# @option opts [Integer] resultsPage The results page
|
56
|
+
# @option opts [Integer] resultsPageSize The results page size
|
57
|
+
# @return [Hash] Daily mentions
|
58
|
+
def project_preview_search_dailymentions(project_id, opts = {})
|
59
|
+
post "/projects/#{project_id}/previewsearch/dailymentions", opts
|
60
|
+
end
|
61
|
+
|
62
|
+
# Create a project preview search for history tab
|
63
|
+
#
|
64
|
+
# @param project_id [Integer] Id of project
|
65
|
+
# @param opts [Hash] options hash of parameters
|
66
|
+
# @option opts [String] endDate The mentions end date
|
67
|
+
# @option opts [String] startDate The mentions start date
|
68
|
+
# @option opts [Array] exclusionSnippets The array with snippets exclussion
|
69
|
+
# @option opts [Boolean] languageAgnostic The agnostic language
|
70
|
+
# @option opts [Array] languages The query language
|
71
|
+
# @option opts [String] queryString The query string content
|
72
|
+
# @option opts [String] queryType The query type
|
73
|
+
# @option opts [Integer] resultsPage The results page
|
74
|
+
# @option opts [Integer] resultsPageSize The results page size
|
75
|
+
# @return [Hash] Mentions for history tab
|
76
|
+
def project_preview_search_history(project_id, opts = {})
|
77
|
+
post "/projects/#{project_id}/previewsearch/history", opts
|
78
|
+
end
|
79
|
+
|
80
|
+
# Create a project preview search for site tab
|
81
|
+
#
|
82
|
+
# @param project_id [Integer] Id of project
|
83
|
+
# @param opts [Hash] options hash of parameters
|
84
|
+
# @option opts [String] endDate The mentions end date
|
85
|
+
# @option opts [String] startDate The mentions start date
|
86
|
+
# @option opts [Array] exclusionSnippets The array with snippets exclussion
|
87
|
+
# @option opts [Boolean] languageAgnostic The agnostic language
|
88
|
+
# @option opts [Array] languages The query language
|
89
|
+
# @option opts [String] queryString The query string content
|
90
|
+
# @option opts [String] queryType The query type
|
91
|
+
# @option opts [String] site The site
|
92
|
+
# @option opts [Integer] resultsPage The results page
|
93
|
+
# @option opts [Integer] resultsPageSize The results page size
|
94
|
+
# @return [Hash] Mentions for site tab
|
95
|
+
def project_preview_search_site(project_id, opts = {})
|
96
|
+
post "/projects/#{project_id}/previewsearch/site", opts
|
97
|
+
end
|
98
|
+
|
99
|
+
# Create a project preview search for top authors
|
100
|
+
#
|
101
|
+
# @param project_id [Integer] Id of project
|
102
|
+
# @param opts [Hash] options hash of parameters
|
103
|
+
# @option opts [String] endDate The mentions end date
|
104
|
+
# @option opts [String] startDate The mentions start date
|
105
|
+
# @option opts [Array] exclusionSnippets The array with snippets exclussion
|
106
|
+
# @option opts [Boolean] languageAgnostic The agnostic language
|
107
|
+
# @option opts [Array] languages The query language
|
108
|
+
# @option opts [String] queryString The query string content
|
109
|
+
# @option opts [String] queryType The query type
|
110
|
+
#
|
111
|
+
# @return [Hash] Mentions for top authors tab
|
112
|
+
def project_preview_search_topauthors(project_id, opts = {})
|
113
|
+
post "/projects/#{project_id}/previewsearch/topauthors", opts
|
114
|
+
end
|
115
|
+
|
116
|
+
# Create a project preview search for topic
|
117
|
+
#
|
118
|
+
# @param project_id [Integer] Id of project
|
119
|
+
# @param opts [Hash] options hash of parameters
|
120
|
+
# @option opts [String] author The mentions author
|
121
|
+
# @option opts [String] topic The topic
|
122
|
+
# @option opts [String] endDate The mentions end date
|
123
|
+
# @option opts [String] startDate The mentions start date
|
124
|
+
# @option opts [Array] exclusionSnippets The array with snippets exclussion
|
125
|
+
# @option opts [Boolean] languageAgnostic The agnostic language
|
126
|
+
# @option opts [Array] languages The query language
|
127
|
+
# @option opts [String] queryString The query string content
|
128
|
+
# @option opts [String] queryType The query type
|
129
|
+
# @option opts [Integer] resultsPage The results page
|
130
|
+
# @option opts [Integer] resultsPageSize The results page size
|
131
|
+
#
|
132
|
+
# @return [Hash] Topic for topic tab
|
133
|
+
def project_preview_search_topic(project_id, opts = {})
|
134
|
+
post "/projects/#{project_id}/previewsearch/topic", opts
|
135
|
+
end
|
136
|
+
|
137
|
+
# Create a project preview search for topics
|
138
|
+
#
|
139
|
+
# @param project_id [Integer] Id of project
|
140
|
+
# @param opts [Hash] options hash of parameters
|
141
|
+
# @option opts [String] endDate The mentions end date
|
142
|
+
# @option opts [String] startDate The mentions start date
|
143
|
+
# @option opts [Array] exclusionSnippets The array with snippets exclussion
|
144
|
+
# @option opts [Boolean] languageAgnostic The agnostic language
|
145
|
+
# @option opts [Array] languages The query language
|
146
|
+
# @option opts [String] queryString The query string content
|
147
|
+
# @option opts [String] queryType The query type
|
148
|
+
#
|
149
|
+
# @return [Hash] Topics for topic tab
|
150
|
+
def project_preview_search_topics(project_id, opts = {})
|
151
|
+
post "/projects/#{project_id}/previewsearch/topics", opts
|
152
|
+
end
|
153
|
+
|
154
|
+
# Create a project preview search for top sites
|
155
|
+
#
|
156
|
+
#
|
157
|
+
# @param project_id [Integer] Id of project
|
158
|
+
# @param opts [Hash] options hash of parameters
|
159
|
+
# @option opts [String] endDate The mentions end date
|
160
|
+
# @option opts [String] startDate The mentions start date
|
161
|
+
# @option opts [Array] exclusionSnippets The array with snippets exclussion
|
162
|
+
# @option opts [Boolean] languageAgnostic The agnostic language
|
163
|
+
# @option opts [Array] languages The query language
|
164
|
+
# @option opts [String] queryString The query string content
|
165
|
+
# @option opts [String] queryType The query type
|
166
|
+
#
|
167
|
+
# @return [Hash] Top sites for topsites tab
|
168
|
+
def project_preview_search_topsites(project_id, opts = {})
|
169
|
+
post "/projects/#{project_id}/previewsearch/topsites", opts
|
11
170
|
end
|
12
171
|
end
|
13
172
|
end
|
@@ -0,0 +1,29 @@
|
|
1
|
+
module BWAPI
|
2
|
+
class Client
|
3
|
+
module Projects
|
4
|
+
# Research module for research projects endpoints
|
5
|
+
module Research
|
6
|
+
# Get all research projects
|
7
|
+
#
|
8
|
+
# @param opts [Hash] options hash of parameters
|
9
|
+
# @option opts [Integer] page Page of results to retrieve
|
10
|
+
# @option opts [Integer] pageSize Results per page of results
|
11
|
+
# @return [Hash] All research projects
|
12
|
+
def get_research_projects(opts = {})
|
13
|
+
get 'projects/published', opts
|
14
|
+
end
|
15
|
+
|
16
|
+
# Edits a published project and returns the published attributes
|
17
|
+
#
|
18
|
+
# @param project_id [Integer] projectId Project Id to retrieve/edit
|
19
|
+
# @param opts [Hash] options hash of parameters
|
20
|
+
# @option opts [String] imageUrl Research project picture
|
21
|
+
# @option opts [Boolean] published Is published in Research Store
|
22
|
+
# @return [Hash] Specific edited research project
|
23
|
+
def update_research_projects(project_id, opts = {})
|
24
|
+
put "projects/published/#{project_id}", opts
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
data/lib/bwapi/response/error.rb
CHANGED
data/lib/bwapi/version.rb
CHANGED
@@ -407,7 +407,7 @@ describe BWAPI::Configuration do
|
|
407
407
|
end
|
408
408
|
|
409
409
|
it 'should reset the user_agent value' do
|
410
|
-
expect(bwapi.user_agent).to eql('BWAPI Ruby Gem
|
410
|
+
expect(bwapi.user_agent).to eql('BWAPI Ruby Gem 13.0.0')
|
411
411
|
end
|
412
412
|
|
413
413
|
it 'should reset the username value' do
|
@@ -508,7 +508,7 @@ describe BWAPI::Configuration do
|
|
508
508
|
client_secret: nil,
|
509
509
|
connection_options: {
|
510
510
|
headers: {
|
511
|
-
user_agent: 'BWAPI Ruby Gem
|
511
|
+
user_agent: 'BWAPI Ruby Gem 13.0.0'
|
512
512
|
},
|
513
513
|
request: {
|
514
514
|
params_encoder: Faraday::FlatParamsEncoder
|
@@ -522,7 +522,7 @@ describe BWAPI::Configuration do
|
|
522
522
|
performance: {},
|
523
523
|
refresh_token: nil,
|
524
524
|
timeout: 60,
|
525
|
-
user_agent: 'BWAPI Ruby Gem
|
525
|
+
user_agent: 'BWAPI Ruby Gem 13.0.0',
|
526
526
|
username: nil,
|
527
527
|
verify_ssl: false
|
528
528
|
)
|
data/spec/bwapi/default_spec.rb
CHANGED
@@ -34,7 +34,7 @@ describe BWAPI::Default do
|
|
34
34
|
client_secret: nil,
|
35
35
|
connection_options: {
|
36
36
|
headers: {
|
37
|
-
user_agent: 'BWAPI Ruby Gem
|
37
|
+
user_agent: 'BWAPI Ruby Gem 13.0.0'
|
38
38
|
},
|
39
39
|
request: {
|
40
40
|
params_encoder: Faraday::FlatParamsEncoder
|
@@ -48,7 +48,7 @@ describe BWAPI::Default do
|
|
48
48
|
performance: {},
|
49
49
|
refresh_token: nil,
|
50
50
|
timeout: 60,
|
51
|
-
user_agent: 'BWAPI Ruby Gem
|
51
|
+
user_agent: 'BWAPI Ruby Gem 13.0.0',
|
52
52
|
username: nil,
|
53
53
|
verify_ssl: false
|
54
54
|
)
|
@@ -130,7 +130,7 @@ describe BWAPI::Default do
|
|
130
130
|
it 'should return the default hash values' do
|
131
131
|
expect(BWAPI::Default.connection_options).to eql(
|
132
132
|
headers: {
|
133
|
-
user_agent: 'BWAPI Ruby Gem
|
133
|
+
user_agent: 'BWAPI Ruby Gem 13.0.0'
|
134
134
|
},
|
135
135
|
request: {
|
136
136
|
params_encoder: Faraday::FlatParamsEncoder
|
metadata
CHANGED
@@ -1,143 +1,179 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bwapi
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 13.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
|
+
- Alexander Ushakov
|
8
|
+
- Ben Slaughter
|
9
|
+
- Jack Marshall
|
7
10
|
- Jonathan Chrisp
|
11
|
+
- Lee McGeever
|
12
|
+
- Lukasz
|
13
|
+
- Lukasz Grzybowski
|
14
|
+
- Preetamd
|
15
|
+
- Vitor Carvalho
|
8
16
|
autorequire:
|
9
17
|
bindir: bin
|
10
18
|
cert_chain: []
|
11
|
-
date: 2016-
|
19
|
+
date: 2016-08-10 00:00:00.000000000 Z
|
12
20
|
dependencies:
|
13
21
|
- !ruby/object:Gem::Dependency
|
14
22
|
name: rspec
|
15
23
|
requirement: !ruby/object:Gem::Requirement
|
16
24
|
requirements:
|
17
|
-
- - ~>
|
25
|
+
- - "~>"
|
18
26
|
- !ruby/object:Gem::Version
|
19
27
|
version: '3.0'
|
20
28
|
type: :development
|
21
29
|
prerelease: false
|
22
30
|
version_requirements: !ruby/object:Gem::Requirement
|
23
31
|
requirements:
|
24
|
-
- - ~>
|
32
|
+
- - "~>"
|
25
33
|
- !ruby/object:Gem::Version
|
26
34
|
version: '3.0'
|
27
35
|
- !ruby/object:Gem::Dependency
|
28
36
|
name: rubocop
|
29
37
|
requirement: !ruby/object:Gem::Requirement
|
30
38
|
requirements:
|
31
|
-
- - ~>
|
39
|
+
- - "~>"
|
32
40
|
- !ruby/object:Gem::Version
|
33
|
-
version:
|
41
|
+
version: 0.34.2
|
34
42
|
type: :development
|
35
43
|
prerelease: false
|
36
44
|
version_requirements: !ruby/object:Gem::Requirement
|
37
45
|
requirements:
|
38
|
-
- - ~>
|
46
|
+
- - "~>"
|
39
47
|
- !ruby/object:Gem::Version
|
40
|
-
version:
|
48
|
+
version: 0.34.2
|
49
|
+
- !ruby/object:Gem::Dependency
|
50
|
+
name: yard
|
51
|
+
requirement: !ruby/object:Gem::Requirement
|
52
|
+
requirements:
|
53
|
+
- - "~>"
|
54
|
+
- !ruby/object:Gem::Version
|
55
|
+
version: 0.9.0
|
56
|
+
type: :development
|
57
|
+
prerelease: false
|
58
|
+
version_requirements: !ruby/object:Gem::Requirement
|
59
|
+
requirements:
|
60
|
+
- - "~>"
|
61
|
+
- !ruby/object:Gem::Version
|
62
|
+
version: 0.9.0
|
63
|
+
- !ruby/object:Gem::Dependency
|
64
|
+
name: geminabox
|
65
|
+
requirement: !ruby/object:Gem::Requirement
|
66
|
+
requirements:
|
67
|
+
- - "~>"
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: 0.13.1
|
70
|
+
type: :development
|
71
|
+
prerelease: false
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
requirements:
|
74
|
+
- - "~>"
|
75
|
+
- !ruby/object:Gem::Version
|
76
|
+
version: 0.13.1
|
41
77
|
- !ruby/object:Gem::Dependency
|
42
78
|
name: allotment
|
43
79
|
requirement: !ruby/object:Gem::Requirement
|
44
80
|
requirements:
|
45
|
-
- - ~>
|
81
|
+
- - "~>"
|
46
82
|
- !ruby/object:Gem::Version
|
47
83
|
version: '1.1'
|
48
84
|
type: :runtime
|
49
85
|
prerelease: false
|
50
86
|
version_requirements: !ruby/object:Gem::Requirement
|
51
87
|
requirements:
|
52
|
-
- - ~>
|
88
|
+
- - "~>"
|
53
89
|
- !ruby/object:Gem::Version
|
54
90
|
version: '1.1'
|
55
91
|
- !ruby/object:Gem::Dependency
|
56
92
|
name: faraday
|
57
93
|
requirement: !ruby/object:Gem::Requirement
|
58
94
|
requirements:
|
59
|
-
- - ~>
|
95
|
+
- - "~>"
|
60
96
|
- !ruby/object:Gem::Version
|
61
97
|
version: '0.9'
|
62
98
|
type: :runtime
|
63
99
|
prerelease: false
|
64
100
|
version_requirements: !ruby/object:Gem::Requirement
|
65
101
|
requirements:
|
66
|
-
- - ~>
|
102
|
+
- - "~>"
|
67
103
|
- !ruby/object:Gem::Version
|
68
104
|
version: '0.9'
|
69
105
|
- !ruby/object:Gem::Dependency
|
70
106
|
name: faraday_middleware
|
71
107
|
requirement: !ruby/object:Gem::Requirement
|
72
108
|
requirements:
|
73
|
-
- - ~>
|
109
|
+
- - "~>"
|
74
110
|
- !ruby/object:Gem::Version
|
75
111
|
version: '0.9'
|
76
112
|
type: :runtime
|
77
113
|
prerelease: false
|
78
114
|
version_requirements: !ruby/object:Gem::Requirement
|
79
115
|
requirements:
|
80
|
-
- - ~>
|
116
|
+
- - "~>"
|
81
117
|
- !ruby/object:Gem::Version
|
82
118
|
version: '0.9'
|
83
119
|
- !ruby/object:Gem::Dependency
|
84
120
|
name: faraday_middleware-parse_csv
|
85
121
|
requirement: !ruby/object:Gem::Requirement
|
86
122
|
requirements:
|
87
|
-
- - ~>
|
123
|
+
- - "~>"
|
88
124
|
- !ruby/object:Gem::Version
|
89
125
|
version: '0.1'
|
90
126
|
type: :runtime
|
91
127
|
prerelease: false
|
92
128
|
version_requirements: !ruby/object:Gem::Requirement
|
93
129
|
requirements:
|
94
|
-
- - ~>
|
130
|
+
- - "~>"
|
95
131
|
- !ruby/object:Gem::Version
|
96
132
|
version: '0.1'
|
97
133
|
- !ruby/object:Gem::Dependency
|
98
134
|
name: faraday_middleware-parse_oj
|
99
135
|
requirement: !ruby/object:Gem::Requirement
|
100
136
|
requirements:
|
101
|
-
- - ~>
|
137
|
+
- - "~>"
|
102
138
|
- !ruby/object:Gem::Version
|
103
139
|
version: '0.3'
|
104
140
|
type: :runtime
|
105
141
|
prerelease: false
|
106
142
|
version_requirements: !ruby/object:Gem::Requirement
|
107
143
|
requirements:
|
108
|
-
- - ~>
|
144
|
+
- - "~>"
|
109
145
|
- !ruby/object:Gem::Version
|
110
146
|
version: '0.3'
|
111
147
|
- !ruby/object:Gem::Dependency
|
112
148
|
name: oj
|
113
149
|
requirement: !ruby/object:Gem::Requirement
|
114
150
|
requirements:
|
115
|
-
- - ~>
|
151
|
+
- - "~>"
|
116
152
|
- !ruby/object:Gem::Version
|
117
153
|
version: '2.11'
|
118
154
|
type: :runtime
|
119
155
|
prerelease: false
|
120
156
|
version_requirements: !ruby/object:Gem::Requirement
|
121
157
|
requirements:
|
122
|
-
- - ~>
|
158
|
+
- - "~>"
|
123
159
|
- !ruby/object:Gem::Version
|
124
160
|
version: '2.11'
|
125
161
|
description: A Ruby wrapper for the Brandwatch API
|
126
|
-
email:
|
162
|
+
email: automation@brandwatch.com
|
127
163
|
executables:
|
128
164
|
- bwapi
|
129
165
|
extensions: []
|
130
166
|
extra_rdoc_files: []
|
131
167
|
files:
|
132
|
-
- .editorconfig
|
133
|
-
- .gitignore
|
134
|
-
- .rubocop.yml
|
135
|
-
- .travis.yml
|
168
|
+
- ".editorconfig"
|
169
|
+
- ".gitignore"
|
170
|
+
- ".rubocop.yml"
|
136
171
|
- CHANGELOG.md
|
137
172
|
- CONTRIBUTING.md
|
138
173
|
- Gemfile
|
139
174
|
- LICENCE.md
|
140
175
|
- README.md
|
176
|
+
- Rakefile
|
141
177
|
- bin/bwapi
|
142
178
|
- bwapi.gemspec
|
143
179
|
- lib/bwapi.rb
|
@@ -150,6 +186,7 @@ files:
|
|
150
186
|
- lib/bwapi/client/admin/clients/users.rb
|
151
187
|
- lib/bwapi/client/admin/clients/users/sharing.rb
|
152
188
|
- lib/bwapi/client/admin/demographics.rb
|
189
|
+
- lib/bwapi/client/admin/integrations.rb
|
153
190
|
- lib/bwapi/client/admin/pricing_upgrades.rb
|
154
191
|
- lib/bwapi/client/admin/projects.rb
|
155
192
|
- lib/bwapi/client/admin/reseller.rb
|
@@ -236,6 +273,7 @@ files:
|
|
236
273
|
- lib/bwapi/client/projects/data/urls.rb
|
237
274
|
- lib/bwapi/client/projects/data/volume.rb
|
238
275
|
- lib/bwapi/client/projects/data_download.rb
|
276
|
+
- lib/bwapi/client/projects/decahose_queries.rb
|
239
277
|
- lib/bwapi/client/projects/demographics.rb
|
240
278
|
- lib/bwapi/client/projects/ditto_queries.rb
|
241
279
|
- lib/bwapi/client/projects/facebook_queries.rb
|
@@ -252,6 +290,7 @@ files:
|
|
252
290
|
- lib/bwapi/client/projects/queries/move.rb
|
253
291
|
- lib/bwapi/client/projects/query/mentionfind.rb
|
254
292
|
- lib/bwapi/client/projects/query_groups.rb
|
293
|
+
- lib/bwapi/client/projects/research.rb
|
255
294
|
- lib/bwapi/client/projects/rules.rb
|
256
295
|
- lib/bwapi/client/projects/rules/backfill.rb
|
257
296
|
- lib/bwapi/client/projects/rules/copy.rb
|
@@ -290,7 +329,7 @@ files:
|
|
290
329
|
- spec/bwapi/default_spec.rb
|
291
330
|
- spec/bwapi_spec.rb
|
292
331
|
- spec/helper.rb
|
293
|
-
homepage: https://github.com/
|
332
|
+
homepage: https://github.com/BrandwatchLtd/bwapi
|
294
333
|
licenses:
|
295
334
|
- MIT
|
296
335
|
metadata: {}
|
@@ -300,14 +339,14 @@ require_paths:
|
|
300
339
|
- lib
|
301
340
|
required_ruby_version: !ruby/object:Gem::Requirement
|
302
341
|
requirements:
|
303
|
-
- -
|
342
|
+
- - ">="
|
304
343
|
- !ruby/object:Gem::Version
|
305
|
-
version:
|
344
|
+
version: 2.0.0
|
306
345
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
307
346
|
requirements:
|
308
|
-
- -
|
347
|
+
- - ">="
|
309
348
|
- !ruby/object:Gem::Version
|
310
|
-
version:
|
349
|
+
version: '0'
|
311
350
|
requirements: []
|
312
351
|
rubyforge_project:
|
313
352
|
rubygems_version: 2.5.1
|
data/.travis.yml
DELETED
@@ -1,29 +0,0 @@
|
|
1
|
-
language: ruby
|
2
|
-
|
3
|
-
before_install:
|
4
|
-
- gem update bundler
|
5
|
-
|
6
|
-
cache: bundler
|
7
|
-
|
8
|
-
rvm:
|
9
|
-
- ruby-head
|
10
|
-
- 2.2.0
|
11
|
-
- 2.1.0
|
12
|
-
- 2.0.0
|
13
|
-
|
14
|
-
matrix:
|
15
|
-
allow_failures:
|
16
|
-
- rvm: ruby-head
|
17
|
-
|
18
|
-
script:
|
19
|
-
- bundle exec rspec
|
20
|
-
- bundle exec rubocop
|
21
|
-
|
22
|
-
deploy:
|
23
|
-
provider: rubygems
|
24
|
-
api_key:
|
25
|
-
secure: g7xKyeiMs2o1HLokzOWCiLKxmTaEmuQDB0he9kxFhjqMLbRQHu1pVL0uE2bD0K/zq8Ebb+OPchVmej/6s5Be97AOK5d1wGdBAhXISwlxPoXxLJ6zU5DF1vjF3YCZK197z81ATcGcocsD2eYXZ4NzJcI+FW3kzO6QQhfHfUUeHvM=
|
26
|
-
gem: bwapi
|
27
|
-
on:
|
28
|
-
branch: staging
|
29
|
-
repo: jonathanchrisp/bwapi
|