This project is a distributed system for loosely managing investments on the Prosper Marketplace, a peer-to-peer loan investment platform. This project consists of this data API, which provides a consistent interface for getting and updating data on individual Prosper accounts. In addition to the data API, there is a collection of python scripts that allow for applying machine learning models to Prosper loan listings. The results of the machine learning model(s) are then pushed up to this data API. Among the python scripts, is a program for applying rules to the machine learning scores, and then automatically place buy orders with the Prosper Marketplace.

Resources

Account

Resource Description
GET prosper/v1/account Retrieve JSON object of an Account
GET prosper/v1/cash_balance Retrieve cash balance of an Account
GET prosper/v1/account_history Retrieve History of Account Value as Time Series

Auth token

Resource Description
PUT prosper/v1/auth_token Reset a User's UUID

Auth user

Resource Description
GET prosper/v1/where_provider_id Retrieve JSON object of an AuthUser
POST prosper/v1/auth_user Saves and updated attributed on an existing AuthUser object
GET prosper/v1/register_prosper_state_token Register and obtain a unique state token for interacting with Prosper OAuth
GET prosper/v1/prosper_state_token Retrieve unique state token for interacting with Prosper OAuth

Bid

Resource Description
POST prosper/v1/log_bids Submit objects that have been returned from direct communication with Prosper Lending's Order Placement API
GET prosper/v1/bid_history Returns history and status of orders

City state geocoding

Resource Description
GET prosper/v1/city_state_geocoding Return a cleaned city/state and other locational information from a Prosper Lending provided location

Deposits

Resource Description
GET prosper/v1/deposits Returns all available deposits that have been made into your Prosper Lending account

Historic listings

Resource Description
GET prosper/v1/historic_yields Returns Historic Yields for the specified aggregation unit (e.g. days, weeks, months, quarters, years) for the specified look back temporal amount

Listings

Resource Description
GET prosper/v1/listings Returns a list of all current (as of the last time another process as updated the underlying data) listings available on Prosper Marketplace
GET prosper/v1/listing Returns returns information on a particular listing that was or is on the Prosper Marketplace. Includes historic listings.
POST prosper/v1/update_listings Update attributes on listings; payload is from calls to Prosper Lending's Listing API
POST prosper/v1/update_scores Machine Learning based success and failure scores; payload from prosper-ml score.py script
GET prosper/v1/active_investable_listings_count Returns a count (integer) of currently listings that are both activate and success/failure scored
GET prosper/v1/scorable_listings Returns a list of activate listings that have not been success/failure scored
GET prosper/v1/historic_scorable_listings Returns a list of historic listings that have not been success/failure scored; returns up to 1500 listings at a time
GET prosper/v1/scored_listings Returns a list of activate listings that have been success/failure scored
GET prosper/v1/historic_scored_listings Returns historic scored listings
GET prosper/v1/loan_history Returns payment history for historic loans; may include other information
GET prosper/v1/loan_listing_numbers Returns a list of historic loan number <==> listing number pairs; this is used during the building and training of ML models
GET prosper/v1/my_listing_ids Returns a list of historic listing numbers for the associated User
GET prosper/v1/listings_for_member_key Returns a list of historic listings from a given listing based off the member_key the provided listing

Loans

Resource Description
GET prosper/v1/loans Returns a list of all loans associated with a given User's account
GET prosper/v1/loan Returns returns information on a particular loan.
POST prosper/v1/upload_loans Update attributes on loans; payload is from calls to Prosper Lending's Loans API

Notes

Resource Description
GET prosper/v1/notes Returns notes and associated information for the specific User

Notify

Resource Description
POST prosper/v1/notify Sends an SMS to the specified User
POST prosper/v1/send_confirmation Sends an Email to the specified User

Prosper oauth

Resource Description
GET prosper/v1/register_prosper_oauth Callback from Littera Manager from Prosper to register Client Information from them
GET prosper/v1/prosper_credentials Returns Prosper related OAuth Tokens for Using OAuth instead of key/password

Upload

Resource Description
POST prosper/v1/upload Receives an uploaded payload for the specified User's Prosper Account
POST prosper/v1/upload_dw Receives an uploaded payloaded for the specified User's Prosper Account's Deposit and Withdrawl History
POST prosper/v1/upload_listings Receives an uploaded payloaded for new and historic Prosper Listings

User

Resource Description
POST prosper/v1/new_user Creates a new user, returning their new UUID

Withdraws

Resource Description
GET prosper/v1/withdraws Retrieves data on withdrawals associated with the specified User's Prosper Account