Class: Google::Apis::TravelimpactmodelV1::TravelImpactModelService
- Inherits:
-
Core::BaseService
- Object
- Core::BaseService
- Google::Apis::TravelimpactmodelV1::TravelImpactModelService
- Defined in:
- lib/google/apis/travelimpactmodel_v1/service.rb
Overview
Travel Impact Model API
Travel Impact Model API lets you query travel carbon emission estimates.
Constant Summary collapse
- DEFAULT_ENDPOINT_TEMPLATE =
"https://travelimpactmodel.$UNIVERSE_DOMAIN$/"
Instance Attribute Summary collapse
-
#key ⇒ String
API key.
-
#quota_user ⇒ String
Available to use for quota purposes for server-side applications.
Instance Method Summary collapse
-
#compute_flight_emissions(compute_flight_emissions_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::TravelimpactmodelV1::ComputeFlightEmissionsResponse
Stateless method to retrieve emission estimates.
-
#compute_scope3_flight_emissions(compute_scope3_flight_emissions_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::TravelimpactmodelV1::ComputeScope3FlightEmissionsResponse
Stateless method to retrieve GHG emissions estimates for a set of flight segments for Scope 3 reporting.
-
#compute_typical_flight_emissions(compute_typical_flight_emissions_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::TravelimpactmodelV1::ComputeTypicalFlightEmissionsResponse
Retrieves typical flight emissions estimates between two airports, also known as a market.
-
#initialize ⇒ TravelImpactModelService
constructor
A new instance of TravelImpactModelService.
Constructor Details
#initialize ⇒ TravelImpactModelService
Returns a new instance of TravelImpactModelService.
47 48 49 50 51 52 |
# File 'lib/google/apis/travelimpactmodel_v1/service.rb', line 47 def initialize super(DEFAULT_ENDPOINT_TEMPLATE, '', client_name: 'google-apis-travelimpactmodel_v1', client_version: Google::Apis::TravelimpactmodelV1::GEM_VERSION) @batch_path = 'batch' end |
Instance Attribute Details
#key ⇒ String
Returns 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.
40 41 42 |
# File 'lib/google/apis/travelimpactmodel_v1/service.rb', line 40 def key @key end |
#quota_user ⇒ String
Returns 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.
45 46 47 |
# File 'lib/google/apis/travelimpactmodel_v1/service.rb', line 45 def quota_user @quota_user end |
Instance Method Details
#compute_flight_emissions(compute_flight_emissions_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::TravelimpactmodelV1::ComputeFlightEmissionsResponse
Stateless method to retrieve emission estimates. Details on how emission estimates are computed are in GitHub. The response will contain all entries that match the input flight legs, in the same order. If there are no estimates available for a certain flight leg, the response will return the flight leg object with empty emission fields. The request will still be considered successful. Reasons for missing emission estimates include: * The flight is unknown to the server. * The input flight leg is missing one or more identifiers. * The flight date is in the past. * The aircraft type is not supported by the model. * Missing seat configuration. The request can contain up to 1000 flight legs. If the request has more than 1000 direct flights, if will fail with an INVALID_ARGUMENT error.
83 84 85 86 87 88 89 90 91 92 |
# File 'lib/google/apis/travelimpactmodel_v1/service.rb', line 83 def compute_flight_emissions(compute_flight_emissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'v1/flights:computeFlightEmissions', ) command.request_representation = Google::Apis::TravelimpactmodelV1::ComputeFlightEmissionsRequest::Representation command.request_object = compute_flight_emissions_request_object command.response_representation = Google::Apis::TravelimpactmodelV1::ComputeFlightEmissionsResponse::Representation command.response_class = Google::Apis::TravelimpactmodelV1::ComputeFlightEmissionsResponse command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#compute_scope3_flight_emissions(compute_scope3_flight_emissions_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::TravelimpactmodelV1::ComputeScope3FlightEmissionsResponse
Stateless method to retrieve GHG emissions estimates for a set of flight
segments for Scope 3 reporting. The response will contain all entries that
match the input Scope3FlightSegment flight segments, in the same order
provided. The estimates will be computed using the following cascading logic (
using the first one that is available): 1. TIM-based emissions given origin,
destination, carrier, flightNumber, departureDate, and cabinClass. 2. Typical
flight emissions given origin, destination, year in departureDate, and
cabinClass. 3. Distance-based emissions calculated using distanceKm, year in
departureDate, and cabinClass. If there is a future flight requested in this
calendar year, we do not support Tier 1 emissions and will fallback to Tier 2
or 3 emissions. If the requested future flight is in not in this calendar year,
we will return an empty response. We recommend that for future flights,
computeFlightEmissions API is used instead. If there are no estimates
available for a certain flight with any of the three methods, the response
will return a Scope3FlightEmissions object with empty emission fields. The
request will still be considered successful. Generally, missing emissions
estimates occur when the flight is unknown to the server (e.g. no specific
flight exists, or typical flight emissions are not available for the requested
pair). The request will fail with an INVALID_ARGUMENT error if: * The
request contains more than 1,000 flight legs. * The input flight leg is
missing one or more identifiers. For example, missing origin/destination
without a valid distance for TIM_EMISSIONS or TYPICAL_FLIGHT_EMISSIONS type
matching, or missing distance for a DISTANCE_BASED_EMISSIONS type matching (if
you want to fallback to distance-based emissions or want a distance-based
emissions estimate, you need to specify a distance). * The flight date is
before 2019 (Scope 3 data is only available for 2019 and after). * The flight
distance is 0 or lower. * Missing cabin class. Because the request is
processed with fallback logic, it is possible that misconfigured requests
return valid emissions estimates using fallback methods. For example, if a
request has the wrong flight number but specifies the origin and destination,
the request will still succeed, but the returned emissions will be based
solely on the typical flight emissions. Similarly, if a request is missing the
origin for a typical flight emissions request, but specifies a valid distance,
the request could succeed based solely on the distance-based emissions.
Consequently, one should check the source of the returned emissions (source)
to confirm the results are as expected.
148 149 150 151 152 153 154 155 156 157 |
# File 'lib/google/apis/travelimpactmodel_v1/service.rb', line 148 def compute_scope3_flight_emissions(compute_scope3_flight_emissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'v1/flights:computeScope3FlightEmissions', ) command.request_representation = Google::Apis::TravelimpactmodelV1::ComputeScope3FlightEmissionsRequest::Representation command.request_object = compute_scope3_flight_emissions_request_object command.response_representation = Google::Apis::TravelimpactmodelV1::ComputeScope3FlightEmissionsResponse::Representation command.response_class = Google::Apis::TravelimpactmodelV1::ComputeScope3FlightEmissionsResponse command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#compute_typical_flight_emissions(compute_typical_flight_emissions_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::TravelimpactmodelV1::ComputeTypicalFlightEmissionsResponse
Retrieves typical flight emissions estimates between two airports, also known as a market. If there are no estimates available for a certain market, the response will return the market object with empty emission fields. The request will still be considered successful. Details on how the typical emissions estimates are computed are on GitHub. The request can contain up to 1000 markets. If the request has more than 1000 markets, it will fail with an INVALID_ARGUMENT error.
185 186 187 188 189 190 191 192 193 194 |
# File 'lib/google/apis/travelimpactmodel_v1/service.rb', line 185 def compute_typical_flight_emissions(compute_typical_flight_emissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'v1/flights:computeTypicalFlightEmissions', ) command.request_representation = Google::Apis::TravelimpactmodelV1::ComputeTypicalFlightEmissionsRequest::Representation command.request_object = compute_typical_flight_emissions_request_object command.response_representation = Google::Apis::TravelimpactmodelV1::ComputeTypicalFlightEmissionsResponse::Representation command.response_class = Google::Apis::TravelimpactmodelV1::ComputeTypicalFlightEmissionsResponse command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |