Categorygithub.com/marcustut/lalamove-go
modulepackage
0.1.5
Repository: https://github.com/marcustut/lalamove-go.git
Documentation: pkg.go.dev

# README

lalamove-go

Unofficial Go Client SDK for the Lalamove APIs

Installation

To install, please execute the following go get command.

go get github.com/rgaquino/lalamove-go

Sample Usage

package main

import (
    "context"
    "fmt"
    "log"
    
    "github.com/rgaquino/lalamove-go"
)

func main() {
    c, err := lalamove.NewClient(
        lalamove.WithBaseURL("https://sandbox-rest.lalamove.com"),
        lalamove.WithAPIKey("API_KEY"),
        lalamove.WithSecret("SECRET_KEY"),
    )
    if err != nil {
        log.Fatalf("fatal error: %s", err)
    }
    
    req := &lalamove.GetQuotationRequest{
        ServiceType: lalamove.ServiceTypeMotorcycle,
        RequesterContact: lalamove.Contact{
            Name:  "Peter Pan",
            Phone: "232",
        },
        Stops: []lalamove.Waypoint{
            {
                Location: lalamove.Location{
                    Lat: "-6.255431000000001",
                    Lng: "106.60114290000001",
                },
                Addresses: lalamove.AddressTranslations{
                    lalamove.LocaleIndonesiaEN: {
                        DisplayString: "Jl. Perum Dasana Indah No.SD 3/ 17-18, RT.3/RW.1, " +
                            "Bojong Nangka, Klp. Dua, Tangerang, Banten 15810, Indonesia",
                        Market:       lalamove.CityCodeIndonesiaJakarata.GetLLMMarket(),
                    },
                },
            },
            {
                Location: lalamove.Location{
                    Lat: "-6.404722800000001",
                    Lng: "106.81902130000003",
                },
                Addresses: lalamove.AddressTranslations{
                    lalamove.LocaleIndonesiaEN: {
                        DisplayString: "Jl. Kartini, Ruko No. 1E, Depok, Pancoran MAS, " +
                            "Kota Depok, Jawa Barat 16431, Indonesia",
                        Market:       lalamove.CityCodeIndonesiaJakarata.GetLLMMarket(),
                    },
                },
            },
        },
        Deliveries: []lalamove.DeliveryInfo{
            {
                ToStop: 1,
                Contact: lalamove.Contact{
                    Name:  "mm",
                    Phone: "9999999",
                },
            },
        },
    }

    resp, err := c.GetQuotation(context.Background(), lalamove.CityCodeSingaporeSingapore, req)
    if err != nil {
        log.Fatalf("fatal error: %s", err)
    }
    fmt.Println(resp)
}

# Functions

NewClient constructs a new Client which can make requests to the Lalamove APIs.
WithAPIKey configures a Lalamove API client with an API Key.
WithBaseURL configures a Lalamove API client with a custom base url.
WithHTTPClient configures a Lalamove API client with a http.Client to make requests over.
WithSecret configures a Lalamove API client with a secret.

# Constants

CityCode enum.
CityCode enum.
CityCode enum.
CityCode enum.
CityCode enum.
CityCode enum.
CityCode enum.
CityCode enum.
CityCode enum.
CityCode enum.
CityCode enum.
CityCode enum.
CityCode enum.
CityCode enum.
CityCode enum.
CityCode enum.
CityCode enum.
CityCode enum.
CityCode enum.
CountryCode enum.
CountryCode enum.
CountryCode enum.
CountryCode enum.
CountryCode enum.
CountryCode enum.
CountryCode enum.
CountryCode enum.
CountryCode enum.
CountryCode enum.
CountryCode enum.
Locale enum.
Locale enum.
Locale enum.
Locale enum.
Locale enum.
Locale enum.
Locale enum.
Locale enum.
Locale enum.
Locale enum.
Locale enum.
Locale enum.
Locale enum.
Locale enum.
Locale enum.
Locale enum.
Locale enum.
Locale enum.
Locale enum.
Locale enum.
Locale enum.
OrderStatusAssigningDriver - Trying to match shipment with a driver.
OrderStatusCanceled - User has canceled the order.
OrderStatusCompleted - The order has been delivered successfully and transaction has concluded.
OrderStatusExpired - The order expired as no drivers accepted the order.
OrderStatusOngoing - A driver has accepted the order.
OrderStatusPickedUp - The driver has picked up the order.
OrderStatusRejected - The order was matched and rejected twice by two drivers in a row.
ServiceType enum.
ServiceType enum.
ServiceType enum.
ServiceType enum.
ServiceType enum.
ServiceType enum.
ServiceType enum.
ServiceType enum.
ServiceType enum.
ServiceType enum.
ServiceType enum.
ServiceType enum.
ServiceType enum.
ServiceType enum.
ServiceType enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.
SpecialRequest enum.

# Variables

AllCountriesByISOCode list all the countries and regions supported by Lalamove by ISO 3166-1 alpha-2 code.
Country enum.
Country enum.
Country enum.
Country enum.
Country enum.
Country enum.
Country enum.
Country enum.
Country enum.
Country enum.
Country enum.
Country enum.

# Structs

Address ...
Client may be used to make requests to the Lalamove APIs.
Contact ...
Country ...
DeliveryInfo ...
DriverDetailsResponse ...
DriverLocationResponse ...
ErrorResponse ...
GetQuotationRequest ...
GetQuotationResponse ...
Location ...
OrderDetailsResponse ...
PlaceOrderRequest ...
PlaceOrderResponse ...
Price ...
Waypoint ...

# Type aliases

AddressTranslations ...
CityCode is the UN/LOCODE of supported cities.
ClientOption is the type of constructor options for NewClient(...).
CountryCode is the ISO 3166-1 alpha-2 of supported countries and regions.
LLMMarket is the country/region/city where the order is being placed.
Locale ...
OrderStatus ...
ServiceType is the range of vehicles that Lalamove provides to cater to different needs at different cities.
SpecialRequest ...