Заправки по топливным картам

Используйте API. чтобы получать данные о заправках транспортного средства за выбранный период. С помощью него можно:
— просматривать транзакции по топливным картам (операции покупки топлива, баланс карты, тип топлива, АЗС)
— получать данные о заправках и сливах топлива по датчику автомобиля (координаты, количество топлива, место события)
— контролировать остатки топлива на начало и конец суток для каждого транспортного средства

Как получить данные

Метод

GET
Адрес запроса
Для получения данных используйте адрес: https://<server_address>/api/api.php?

Параметры запроса

cmd=fuel — команда для получения данных о заправках
imei — идентификатор транспортного средства в системе
start — время начала выборки (Unix timestamp)
stop — время окончания выборки (Unix timestamp)
  • node — номер узла, на котором нужно выполнить команду
     

Пример запроса

https://<server_address>/api/api.php?cmd=fuel&imei=863591021267806&start=1404158400&stop=1406836800&node=1
Ответ возвращается в формате JSON и содержит три основных блока:
1. Топливные карты (cards)
Массив карт с информацией о каждой карте и её транзакциях:
"cards": [
    {
        "id": 601,                 // Идентификатор карты в системе PILOT
        "card_num": "257464691",   // Номер карты
        "balance": "0",            // Баланс карты на момент выборки
        "type_name": "Магистраль", // Тип карты
        "transactions": {          // Транзакции по карте
            "1404206488": {
                "operation": "Покупка",       // Тип операции (Покупка/Возврат и др.)
                "ts": 1404206488,             // Время транзакции (Unix timestamp)
                "azs": "АЗС название",       // Название АЗС
                "liters": "20.0000",         // Количество литров
                "sum": "636.00",             // Сумма со скидкой
                "sumg": "658.26",            // Сумма без скидки
                "fuel": "Дизельное топливо", // Тип топлива
                "price": "31.80",            // Стоимость со скидкой
                "priceg": "32.91",           // Стоимость без скидки
                "saldo": "0.00"              // Сальдо карты на момент транзакции
            }
        }
    }
]
2. Заправки/сливы по датчику (fillings)
Объект, где ключи — время события (Unix timestamp), значения — данные о заправке или сливе топлива:
"fillings": {
    "1404205495": {
        "ts": 1404205495,       // Время события (Unix timestamp)
        "type_id": 1,           // Тип события: 1 — заправка, 2 — слив
        "liters": "23.2862",    // Количество топлива
        "lat": "51.9899",       // Широта
        "lon": "47.8203",       // Долгота
        "place": "RU, Саратовская область, Балаково", // Адрес
        "fuel_start": "223.68"  // Топливо в баке на начало события
    }
}
 
3. Остатки топлива на начало и конец суток (fuel)
Объект, где ключи — дата начала суток (Unix timestamp), значения — остатки топлива:
"fuel": {
    "1404072000": {
        "ts": 1404072000,   // Дата начала суток (Unix timestamp)
        "te": 1404158400,   // Дата окончания суток
        "start": "4.76",    // Топливо на начало суток (литры)
        "stop": "18.93"     // Топливо на конец суток (литры)
    }
}
 
Пример полного ответа
{
    "code": 0,
    "msg": "OK",
    "cards": [
        {
            "id": 601,
            "card_num": "257464691",
            "balance": "0",
            "type_name": "Магистраль",
            "transactions": {
                "1404206488": {
                    "operation": "Покупка",
                    "ts": 1404206488,
                    "azs": "Саратовнефтепродукт(новый)",
                    "liters": "20.0000",
                    "sum": "636.00",
                    "sumg": "658.26",
                    "fuel": "Дизельное топливо",
                    "price": "31.80",
                    "priceg": "32.91",
                    "saldo": "0.00"
                },
                "1404363943": {
                    "operation": "Покупка",
                    "ts": 1404363943,
                    "azs": "Саратовнефтепродукт(новый)",
                    "liters": "30.0000",
                    "sum": "954.00",
                    "sumg": "987.39",
                    "fuel": "Дизельное топливо",
                    "price": "31.80",
                    "priceg": "32.91",
                    "saldo": "0.00"
                },
                "1404450165": {
                    "operation": "Покупка",
                    "ts": 1404450165,
                    "azs": "Саратовнефтепродукт(новый)",
                    "liters": "30.0000",
                    "sum": "954.00",
                    "sumg": "987.39",
                    "fuel": "Дизельное топливо",
                    "price": "31.80",
                    "priceg": "32.91",
                    "saldo": "0.00"
                },
                "1404466730": {
                    "operation": "Покупка",
                    "ts": 1404466730,
                    "azs": "Саратовнефтепродукт(новый)",
                    "liters": "15.0000",
                    "sum": "477.00",
                    "sumg": "493.70",
                    "fuel": "Дизельное топливо",
                    "price": "31.80",
                    "priceg": "32.91",
                    "saldo": "0.00"
                },
                "1404736340": {
                    "operation": "Покупка",
                    "ts": 1404736340,
                    "azs": "Саратовнефтепродукт(новый)",
                    "liters": "30.0000",
                    "sum": "960.00",
                    "sumg": "993.60",
                    "fuel": "Дизельное топливо",
                    "price": "32.00",
                    "priceg": "33.12",
                    "saldo": "0.00"
                },
                "1404902605": {
                    "operation": "Покупка",
                    "ts": 1404902605,
                    "azs": "Саратовнефтепродукт(новый)",
                    "liters": "40.0000",
                    "sum": "1280.00",
                    "sumg": "1324.80",
                    "fuel": "Дизельное топливо",
                    "price": "32.00",
                    "priceg": "33.12",
                    "saldo": "0.00"
                }
            }
        }
    ],
    "fillings": {
        "1404205495": {
            "ts": 1404205495,
            "type_id": 1,
            "liters": "23.2862",
            "lat": "51.9899",
            "lon": "47.8203",
            "place": "RU, Саратовская область, Балаково"
        },
        "1404363392": {
            "ts": 1404363392,
            "type_id": 1,
            "liters": "37.391",
            "lat": "52.0001",
            "lon": "47.8192",
            "place": "RU, Саратовская область, Балаково"
        },
        "1404449750": {
            "ts": 1404449750,
            "type_id": 1,
            "liters": "35.4463",
            "lat": "51.994",
            "lon": "47.8163",
            "place": "RU, Саратовская область, Балаково, Безымянный проезд"
        },
        "1404736008": {
            "ts": 1404736008,
            "type_id": 1,
            "liters": "16.4268",
            "lat": "51.9908",
            "lon": "47.8188",
            "place": "RU, Саратовская область, Балаково, Безымянный проезд"
        },
        "1404808770": {
            "ts": 1404808770,
            "type_id": 1,
            "liters": "9.67625",
            "lat": "51.9905",
            "lon": "47.8194",
            "place": "RU, Саратовская область, Балаково, Безымянный проезд"
        },
        "1404808844": {
            "ts": 1404808844,
            "type_id": 2,
            "liters": "12.0403",
            "lat": "51.991",
            "lon": "47.8186",
            "place": "RU, Саратовская область, Балаково, Безымянный проезд"
        },
        "1404902092": {
            "ts": 1404902092,
            "type_id": 1,
            "liters": "45.3818",
            "lat": "52.02",
            "lon": "47.849",
            "place": "RU, Саратовская область, Балаково, Саратовское шоссе"
        }
    }