class Google::Apis::CivicinfoV2::CivicInfoService
Google
Civic Information API
Provides polling places, early vote locations, contest data, election
officials, and government representatives for U.S. residential addresses.
@example
require 'google/apis/civicinfo_v2' Civicinfo = Google::Apis::CivicinfoV2 # Alias the module service = Civicinfo::CivicInfoService.new
Attributes
@return [String]
API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
@return [String]
Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
Public Class Methods
# File lib/google/apis/civicinfo_v2/service.rb, line 46 def initialize super('https://civicinfo.googleapis.com/', '', client_name: 'google-apis-civicinfo_v2', client_version: Google::Apis::CivicinfoV2::GEM_VERSION) @batch_path = 'batch' end
Public Instance Methods
List of available elections to query. @param [String] fields
Selector specifying which fields to include in a partial response.
@param [String] quota_user
Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
@param [Google::Apis::RequestOptions] options
Request-specific options
@yield [result, err] Result & error if block supplied @yieldparam result [Google::Apis::CivicinfoV2::QueryElectionsResponse] parsed result object @yieldparam err [StandardError] error object if request failed
@return [Google::Apis::CivicinfoV2::QueryElectionsResponse]
@raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification @raise [Google::Apis::AuthorizationError] Authorization is required
# File lib/google/apis/civicinfo_v2/service.rb, line 104 def query_election(fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'civicinfo/v2/elections', options) command.response_representation = Google::Apis::CivicinfoV2::QueryElectionsResponse::Representation command.response_class = Google::Apis::CivicinfoV2::QueryElectionsResponse command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end
Looks up information relevant to a voter based on the voter's registered address. @param [String] address
The registered address of the voter to look up.
@param [Fixnum] election_id
The unique ID of the election to look up. A list of election IDs can be obtained at https://www.googleapis.com/civicinfo/`version`/elections. If no election ID is specified in the query and there is more than one election with data for the given voter, the additional elections are provided in the otherElections response field.
@param [Boolean] official_only
If set to true, only data from official state sources will be returned.
@param [Boolean] return_all_available_data
If set to true, the query will return the success code and include any partial information when it is unable to determine a matching address or unable to determine the election for electionId=0 queries.
@param [String] fields
Selector specifying which fields to include in a partial response.
@param [String] quota_user
Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
@param [Google::Apis::RequestOptions] options
Request-specific options
@yield [result, err] Result & error if block supplied @yieldparam result [Google::Apis::CivicinfoV2::VoterInfoResponse] parsed result object @yieldparam err [StandardError] error object if request failed
@return [Google::Apis::CivicinfoV2::VoterInfoResponse]
@raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification @raise [Google::Apis::AuthorizationError] Authorization is required
# File lib/google/apis/civicinfo_v2/service.rb, line 146 def query_voter_info(address, election_id: nil, official_only: nil, return_all_available_data: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'civicinfo/v2/voterinfo', options) command.response_representation = Google::Apis::CivicinfoV2::VoterInfoResponse::Representation command.response_class = Google::Apis::CivicinfoV2::VoterInfoResponse command.query['address'] = address unless address.nil? command.query['electionId'] = election_id unless election_id.nil? command.query['officialOnly'] = official_only unless official_only.nil? command.query['returnAllAvailableData'] = return_all_available_data unless return_all_available_data.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end
Looks up political geography and representative information for a single address. @param [String] address
The address to look up. May only be specified if the field ocdId is not given in the URL
@param [Boolean] include_offices
Whether to return information about offices and officials. If false, only the top-level district information will be returned.
@param [Array<String>, String] levels
A list of office levels to filter by. Only offices that serve at least one of these levels will be returned. Divisions that don't contain a matching office will not be returned.
@param [Array<String>, String] roles
A list of office roles to filter by. Only offices fulfilling one of these roles will be returned. Divisions that don't contain a matching office will not be returned.
@param [String] fields
Selector specifying which fields to include in a partial response.
@param [String] quota_user
Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
@param [Google::Apis::RequestOptions] options
Request-specific options
@yield [result, err] Result & error if block supplied @yieldparam result [Google::Apis::CivicinfoV2::RepresentativeInfoResponse] parsed result object @yieldparam err [StandardError] error object if request failed
@return [Google::Apis::CivicinfoV2::RepresentativeInfoResponse]
@raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification @raise [Google::Apis::AuthorizationError] Authorization is required
# File lib/google/apis/civicinfo_v2/service.rb, line 192 def representative_info_by_address(address: nil, include_offices: nil, levels: nil, roles: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'civicinfo/v2/representatives', options) command.response_representation = Google::Apis::CivicinfoV2::RepresentativeInfoResponse::Representation command.response_class = Google::Apis::CivicinfoV2::RepresentativeInfoResponse command.query['address'] = address unless address.nil? command.query['includeOffices'] = include_offices unless include_offices.nil? command.query['levels'] = levels unless levels.nil? command.query['roles'] = roles unless roles.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end
Looks up representative information for a single geographic division. @param [String] ocd_id
The Open Civic Data division identifier of the division to look up.
@param [Array<String>, String] levels
A list of office levels to filter by. Only offices that serve at least one of these levels will be returned. Divisions that don't contain a matching office will not be returned.
@param [Boolean] recursive
If true, information about all divisions contained in the division requested will be included as well. For example, if querying ocd-division/country:us/ district:dc, this would also return all DC's wards and ANCs.
@param [Array<String>, String] roles
A list of office roles to filter by. Only offices fulfilling one of these roles will be returned. Divisions that don't contain a matching office will not be returned.
@param [String] fields
Selector specifying which fields to include in a partial response.
@param [String] quota_user
Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
@param [Google::Apis::RequestOptions] options
Request-specific options
@yield [result, err] Result & error if block supplied @yieldparam result [Google::Apis::CivicinfoV2::RepresentativeInfoData] parsed result object @yieldparam err [StandardError] error object if request failed
@return [Google::Apis::CivicinfoV2::RepresentativeInfoData]
@raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification @raise [Google::Apis::AuthorizationError] Authorization is required
# File lib/google/apis/civicinfo_v2/service.rb, line 237 def representative_info_by_division(ocd_id, levels: nil, recursive: nil, roles: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'civicinfo/v2/representatives/{ocdId}', options) command.response_representation = Google::Apis::CivicinfoV2::RepresentativeInfoData::Representation command.response_class = Google::Apis::CivicinfoV2::RepresentativeInfoData command.params['ocdId'] = ocd_id unless ocd_id.nil? command.query['levels'] = levels unless levels.nil? command.query['recursive'] = recursive unless recursive.nil? command.query['roles'] = roles unless roles.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end
Searches for political divisions by their natural name or OCD ID. @param [String] query
The search query. Queries can cover any parts of a OCD ID or a human readable division name. All words given in the query are treated as required patterns. In addition to that, most query operators of the Apache Lucene library are supported. See http://lucene.apache.org/core/2_9_4/queryparsersyntax.html
@param [String] fields
Selector specifying which fields to include in a partial response.
@param [String] quota_user
Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
@param [Google::Apis::RequestOptions] options
Request-specific options
@yield [result, err] Result & error if block supplied @yieldparam result [Google::Apis::CivicinfoV2::SearchDivisionResponse] parsed result object @yieldparam err [StandardError] error object if request failed
@return [Google::Apis::CivicinfoV2::SearchDivisionResponse]
@raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification @raise [Google::Apis::AuthorizationError] Authorization is required
# File lib/google/apis/civicinfo_v2/service.rb, line 76 def search_divisions(query: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'civicinfo/v2/divisions', options) command.response_representation = Google::Apis::CivicinfoV2::SearchDivisionResponse::Representation command.response_class = Google::Apis::CivicinfoV2::SearchDivisionResponse command.query['query'] = query unless query.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end
Protected Instance Methods
# File lib/google/apis/civicinfo_v2/service.rb, line 252 def apply_command_defaults(command) command.query['key'] = key unless key.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? end