google_route_optimization_api 1.0.0 copy "google_route_optimization_api: ^1.0.0" to clipboard
google_route_optimization_api: ^1.0.0 copied to clipboard

A Dart package to interact with Google Route Optimization API using OAuth2.

example/google_route_optimization_api_example.dart

import 'dart:developer';

import 'package:dio/dio.dart';
import 'package:google_route_optimization_api/google_route_optimization_api.dart';

void main() async {
  try {
    final response = await GoogleRouteOptimizationApiBase.request(
      serviceAccount: {
        "type": "service_account",
        "project_id": "YOUR_PROJECT_ID",
        "private_key_id": "YOUR_PRIVATE_KEY_ID",
        "private_key": "YOUR_PRIVATE_KEY",
        "client_email": "YOUR_CLIENT_EMAIL",
        "client_id": "YOUR_CLIENT_ID",
        "auth_uri": "YOUR_AUTH_URI",
        "token_uri": "YOUR_TOKEN_URI",
        "auth_provider_x509_cert_url": "YOUR_AUTH_PROVIDER_X509_CERT_URL",
        "client_x509_cert_url": "YOUR_CLIENT_X509_CERT_URL",
        "universe_domain": "googleapis.com"
      },
      routeOptimizationRequest: RouteOptimizationRequest(
        model: ShipmentModel(
          vehicles: [
            Vehicle(
              label:
                  "Vehicle 1 Salim Salam Bridge, Sea Highway, Wata 2033 9105, Lebanon",
              startLocation: LatLng(latitude: 33.87562, longitude: 35.495197),
              endLocation: LatLng(latitude: 33.87562, longitude: 35.495197),
            ),
            Vehicle(
              label:
                  "Vehicle 2 Lebanese Academy of Fine Arts, Street 23, Sinn El Fil 1203, Lebanon",
              startLocation: LatLng(latitude: 33.878784, longitude: 35.540235),
              endLocation: LatLng(latitude: 33.878784, longitude: 35.540235),
            ),
          ],
          shipments: [
            Shipment(
              label: "Shipment 1",
              pickups: [
                VisitRequest(
                  label: "Ware House label",
                  arrivalLocation:
                      LatLng(latitude: 33.869000, longitude: 35.503000),
                  duration: "60s",
                )
              ],
              deliveries: [
                VisitRequest(
                  label: "Beirut Stadium, Stadium Street, Beirut 1101, Lebanon",
                  arrivalLocation:
                      LatLng(latitude: 33.885500, longitude: 35.511000),
                ),
              ],
            )
          ],
        ),
      ),
    );
    print(response.metrics);
  } catch (e) {
    if (e is DioException) {
      log("${e.response}");
    } else {
      print(e);
    }
  }
}
1
likes
130
points
32
downloads

Publisher

unverified uploader

Weekly Downloads

A Dart package to interact with Google Route Optimization API using OAuth2.

Repository (GitHub)
View/report issues

Topics

#firebase #api #google #ptimization #route

Documentation

API reference

License

MIT (license)

Dependencies

dio, freezed_annotation, googleapis_auth, json_annotation

More

Packages that depend on google_route_optimization_api