GithubHelp home page GithubHelp logo

isabella232 / lyft-go-sdk Goto Github PK

View Code? Open in Web Editor NEW

This project forked from lyft/lyft-go-sdk

0.0 0.0 0.0 52 KB

Go SDK for the Lyft Public API

Home Page: https://www.lyft.com/developers

License: Apache License 2.0

Go 100.00%

lyft-go-sdk's Introduction

DEPRECATION NOTICE

Please note that this SDK is deprecated and is no longer officially supported by Lyft.

Lyft Go SDK

lyft-go-sdk is a Go client library for accessing the Lyft API.

Registration

  • You must first create a Lyft Developer account here.
  • Once registered, create a new application here.
  • Your new application will be assigned a Client ID and Client Secret (for use with two- or three-legged OAuth) and a Client Token (for use with public endpoints that don't require user context).

Installation

go get github.com/lyft/lyft-go-sdk/lyft

Usage

The lyft package provides a Client for accessing the Lyft API. Authentication is handled by the http.Client passed to NewAPIClient to handle OAuth2. The Lyft API uses the Client Credentials grant for public endpoints and the Authorization Code grant for endpoints that require a user context; see example for the former and the latter.

client := lyft.NewAPIClient(httpClient, "my-sample-app")

// Get a list of rides taken by the authenticated user within the past 30 days.
result, resp, err := client.UserApi.GetRides(time.Now().AddDate(0, 0, -30), nil)

// Get driver ETA for the specified location.
result, _, err := client.PublicApi.GetETA(37.7763, -122.3918, nil)

// Preset Prime Time to 25% in the specified location.
resp, err := client.SandboxApi.SetPrimeTime(lyft.SandboxPrimetime{
	Lat:                 37.7884,
	Lng:                 -122.4076,
	PrimetimePercentage: "25%",
})

Documentation for API Endpoints

All URIs are relative to https://api.lyft.com/v1

Class Method HTTP request Description
PublicApi GetCost Get /cost Cost estimates
PublicApi GetDrivers Get /drivers Available drivers nearby
PublicApi GetETA Get /eta Pickup ETAs
PublicApi GetRideTypes Get /ridetypes Types of rides
SandboxApi SetPrimeTime Put /sandbox/primetime Preset Prime Time percentage
SandboxApi SetRideStatus Put /sandbox/rides/{id} Propagate ride through ride status
SandboxApi SetRideTypeAvailability Put /sandbox/ridetypes/{ride_type} Driver availability for processing ride request
SandboxApi SetRideTypes Put /sandbox/ridetypes Preset types of rides for sandbox
UserApi CancelRide Post /rides/{id}/cancel Cancel a ongoing requested ride
UserApi GetProfile Get /profile The user's general info
UserApi GetRide Get /rides/{id} Get the ride detail of a given ride ID
UserApi GetRideReceipt Get /rides/{id}/receipt Get the receipt of the rides.
UserApi GetRides Get /rides List rides
UserApi NewRide Post /rides Request a Lyft
UserApi SetRideDestination Put /rides/{id}/destination Update the destination of the ride
UserApi SetRideRating Put /rides/{id}/rating Add the passenger's rating, feedback, and tip

Documentation For Models

Support

If you're looking for help configuring or using the SDK, or if you have general questions related to our APIs, the Lyft Developer Platform team provides support through our forum as well as on Stack Overflow (using the lyft-api tag).

Reporting security vulnerabilities

If you've found a vulnerability or a potential vulnerability in the Lyft Go SDK, please let us know at [email protected]. We'll send a confirmation email to acknowledge your report, and we'll send an additional email when we've identified the issue positively or negatively.

lyft-go-sdk's People

Contributors

vpolouchkine avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.