Method: flights.computeFlightEmissions

Метод без сохранения состояния для получения оценок выбросов. Подробная информация о том, как рассчитываются оценки выбросов: https://github.com/google/travel-impact-model .

Ответ будет содержать все записи, соответствующие входным участкам полета, в том же порядке. Если для определенного участка полета нет доступных оценок, ответ вернет объект участка полета с пустыми полями выбросов. Запрос по-прежнему будет считаться успешным. Причины отсутствия оценок выбросов включают в себя:

  • Рейс неизвестен серверу.
  • На входном участке полета отсутствует один или несколько идентификаторов.
  • Дата полета уже в прошлом.
  • Тип самолета не поддерживается моделью.
  • Отсутствует конфигурация сидений.

Запрос может содержать до 1000 участков полета. Если запрос содержит более 1000 прямых рейсов, if завершится с ошибкой INVALID_ARGUMENT.

HTTP-запрос

POST https://travelimpactmodel.googleapis.com/v1/flights:computeFlightEmissions

URL-адрес использует синтаксис транскодирования gRPC .

Тело запроса

Тело запроса содержит данные следующей структуры:

JSON-представление
{
  "flights": [
    {
      object (Flight)
    }
  ]
}
Поля
flights[]

object ( Flight )

Необходимый. Прямые рейсы для возврата оценок выбросов.

Тело ответа

В случае успеха тело ответа содержит данные следующей структуры:

Определение вывода для ответа [flights.computeFlightEmissions][google.travel.sustainability.travelimpactmodel.v1.ComputeFlightEmissions].

JSON-представление
{
  "flightEmissions": [
    {
      object (FlightWithEmissions)
    }
  ],
  "modelVersion": {
    object (ModelVersion)
  }
}
Поля
flightEmissions[]

object ( FlightWithEmissions )

Список этапов полета с оценками выбросов.

modelVersion

object ( ModelVersion )

Версия модели, в соответствии с которой были рассчитаны оценки выбросов для всех рейсов в этом ответе.

Полет

Все подробности относятся к одному элементу запроса на оценку выбросов прямых рейсов.

JSON-представление
{
  "origin": string,
  "destination": string,
  "operatingCarrierCode": string,
  "flightNumber": integer,
  "departureDate": {
    object (Date)
  }
}
Поля
origin

string

Необходимый. Код аэропорта ИАТА для отправления рейса, например «LHR».

destination

string

Необходимый. Код аэропорта IATA для пункта назначения рейса, например «JFK».

operatingCarrierCode

string

Необходимый. Код перевозчика IATA, например «AA».

flightNumber

integer

Необходимый. Номер рейса, например 324.

departureDate

object ( Date )

Необходимый. Дата вылета в часовом поясе аэропорта вылета. Должна быть дата в настоящем или будущем.

Дата

Представляет полную или частичную календарную дату, например день рождения. Время суток и часовой пояс либо указаны в другом месте, либо не имеют значения. Дата указана по григорианскому календарю. Это может представлять собой одно из следующих действий:

  • Полная дата с ненулевыми значениями года, месяца и дня.
  • Месяц и день с нулевым годом (например, годовщина).
  • Год сам по себе, с нулевым месяцем и нулевым днем.
  • Год и месяц с нулевым днем ​​(например, дата истечения срока действия кредитной карты).

Связанные типы:

JSON-представление
{
  "year": integer,
  "month": integer,
  "day": integer
}
Поля
year

integer

Год даты. Должно быть от 1 до 9999 или 0, чтобы указать дату без года.

month

integer

Месяц года. Должно быть от 1 до 12 или 0, чтобы указать год без месяца и дня.

day

integer

День месяца. Должно быть от 1 до 31 и действительно для года и месяца, или 0, чтобы указать год отдельно или год и месяц, если день не имеет значения.

РейсСВыбросами

Прямой рейс с оценками выбросов.

JSON-представление
{
  "flight": {
    object (Flight)
  },
  "emissionsGramsPerPax": {
    object (EmissionsGramsPerPax)
  }
}
Поля
flight

object ( Flight )

Необходимый. Соответствует идентификаторам рейсов в запросе. Примечание: все коды IATA пишутся с заглавной буквы.

emissionsGramsPerPax

object ( EmissionsGramsPerPax )

Необязательный. Оценочные цифры выбросов на одного пассажира. Не будет присутствовать, если выбросы не могут быть рассчитаны. Список причин, по которым выбросы невозможно рассчитать, см. в разделе [flights.computeFlightEmissions][google.travel.sustainability.travelimpactmodel.v1.ComputeFlightEmissions].

ВыбросыГраммыPerPax

Результаты сгруппированных выбросов по классам посадочных мест.

JSON-представление
{
  "first": integer,
  "business": integer,
  "premiumEconomy": integer,
  "economy": integer
}
Поля
first

integer

Выбросы на одного пассажира первого класса в граммах. Это поле вычисляется и заполняется всегда, независимо от того, есть ли в самолете места первого класса или нет.

business

integer

Выбросы на одного пассажира бизнес-класса в граммах. Это поле вычисляется и заполняется всегда, независимо от того, есть ли в самолете места бизнес-класса или нет.

premiumEconomy

integer

Выбросы на одного пассажира премиум-эконом-класса в граммах. Это поле вычисляется и заполняется всегда, независимо от того, есть ли в самолете места премиум-эконом-класса или нет.

economy

integer

Выбросы на одного пассажира эконом-класса в граммах. Это поле вычисляется и заполняется всегда, независимо от того, есть ли в самолете места экономического класса или нет.

МодельВерсия

Версия модели Travel Impact. Дополнительную информацию об управлении версиями модели см. на странице https://github.com/google/travel-impact-model/#versioning .

JSON-представление
{
  "major": integer,
  "minor": integer,
  "patch": integer,
  "dated": string
}
Поля
major

integer

Основные версии: серьезные изменения в методологии (например, добавление в модель новых источников данных, которые приводят к серьезным изменениям результатов). Такие изменения будут нечастыми и о них будет объявлено заблаговременно. Могут потребоваться изменения версии API, которые будут соответствовать рекомендациям https://cloud.google.com/endpoints/docs/openapi/versioning-an-api#backwards-inсовместимости .

minor

integer

Второстепенные версии: изменения модели, которые, будучи согласованными во всех версиях схемы, меняют параметры модели или реализацию.

patch

integer

Версии исправлений: изменения реализации, предназначенные для устранения ошибок или неточностей в реализации модели.

dated

string

Устаревшие версии: наборы данных модели воссоздаются с использованием обновленных входных данных, но в алгоритмы регулярно не вносятся изменения.