Skip to content
Permalink
master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time

executer-api

A RESTful API built for consumption by the Executer client apps, which originated as the winning project in Uber's first international hackathon.

Executer automatically schedules a ride via Uber for events in your Google Calendar.

V2 Designs -- Next Release

Executer Screenshots

V1 Designs

Executer Screenshots Screenshots of app using Executer API.

Uber API <-                        -> Executer for iOS
            \                    /
              -> Executer API <-
            /                    \
GCal API <-                        -> Executer for Android
                                  

Check out the repos of mobile apps that already use the Executer backend:

Hosted Dev Version of API

Getting Started

Get the app running locally in the following way:

# Clone the Repo
git clone https://github.com/andela/executer-api
cd executer-api

# Install dependencies
npm install

# Create .env file and set the following environment variables and add the necessary values
DB_URL=mongodb://localhost/executer
GOOGLE_CAL_CLIENT_ID=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
GOOGLE_CAL_CLIENT_SECRET=xxxxxxxxxxxxxxxx
UBER_CLIENT_ID=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
UBER_SECRET_KEY=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
UBER_SERVER_TOKEN=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

# Run the app
gulp default

The server will now be running at http://localhost:5555

Endpoints

  • GET calendar
    • Returns calendar events after Google OAuth
  • GET location
    • Returns location in Address form when supplied lng and lat, and vice versa
  • GET login
    • Redirects to Uber Login
  • POST login
    • Creates login session
  • GET requests/shared
    • ???
  • GET trips/:uuid
    • Returns information about a particular trip
  • POST trips/:uuid
    • Creates a new trip
  • GET uber/callback
    • ???
  • GET user
    • Returns user data and access token when sent Uber Login Credentials
  • GET users/:id/requests
    • Returns requests for a particular user
  • GET users/:uuid/requests/:id
    • Returns particular request for a particular user
  • DELETE users/:uuid/requests/:id
    • Deletes an existing request

License

Code released under the MIT license.