IP Library Granted Patent US 11,164,275
Granted Patent B2
US 11,164,275 · App. 15/395,838 · Granted Nov 2, 2021

Flexible API framework

Inventors: Limin Shen (San Francisco, CA); Michael Lodick (San Francisco, CA); Wei You (San Francisco, CA); Jeff Pinner (San Francisco, CA)
Assignee: LYFT, INC.
G06Q50/30H04W4/029G06Q2240/00
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,164,275
App. No.
15/395,838
Granted
Nov 2, 2021
Kind
B2
Abstract

Embodiments provide approaches to selectively integrate with various providers based on reliability factors, user preferences, and/or other criteria. For example, a user in a location where an on-demand provider is available may attempt to utilize services provided by the on-demand provider in a different location where the on-demand provider has limited or no services available, but where one or more other on-demand providers may be available. The user may attempt to access services provided by the on-demand provider using an application provided by the on-demand provider. However, in the situation where the user is in the location where services provided by the on-demand provider are not available, the user would have to secure other means of accessing those services. In such a situation the user may be able to utilize the application to request services with at least one partner on-demand provider. This can include, for example, enabling the user to use the application to access such services, and thus maintain a familiar front-end user experience, while on the backend a flexible application program interface (API) framework is utilized to enable requests to partner on-demand providers who can satisfy requests on behalf of the on-demand provider.

Claims (56)

1. A computer-implemented method, comprising:

identifying a geographic region associated with a requestor computing device, the requestor computing device having operating thereon an application operable to submit transport service requests, wherein the application is maintained by a first transport service provider associated with a first set of transportation providers;

determining, based on the geographic region, a second transport service provider associated with a second set of transportation providers, the second transport service provider associated with one or more application program interfaces (APIs) for which to interact with the second transport service provider;

digitally communicating, through at least one API of the one or more APIs, a transport service request to an application of the second transport service provider to request a transportation provider;

receiving from the application of the second transport service provider, through the at least one API of the one or more APIs, a location of a selected transportation provider, from the second set of transportation providers, dispatched to fulfill the transport service request; and

providing, for display on a graphical user interface of the application of the first transport service provider on the requestor computing device, the location of the selected transportation provider dispatched to fulfill the transport service request.

2. The computer-implemented method of claim 1 , further comprising:

providing for display one or more transport service providers associated with the geographic region; and

receiving information indicating a selection of the second transport service provider.

3. The computer-implemented method of claim 1 , further comprising identifying the geographic region associated with the requestor computing device based on a global positioning system (GPS) communication from the requestor computing device.

4. The computer-implemented method of claim 1 , further comprising:

providing, for display on the graphical user interface of the application of the first transport service provider on the requestor computing device, an onboarding page associated with the second transport service provider, the onboarding page including a terms of service associated with the second transport service provider.

5. The computer-implemented method of claim 1 , further comprising determining the second transport service provider upon identifying that the first set of transportation providers are unavailable within the geographic region.

6. The computer-implemented method of claim 1 , further comprising:

utilizing the at least one API to receive, from the application of the second transport service provider, service types available via the second transport service provider; and

wherein the selected transportation provider dispatched to fulfill the transport service request is based on a selection of a service type from the service types available via the second transport service provider.

7. The computer-implemented method of claim 1 , wherein the at least one API of the one or more APIs is based on a set of rules, wherein the set of rules is based at least in part on user preferences in a user profile associated with the first transport service provider or reliability criteria associated with the second transport service provider.

8. The computer-implemented method of claim 1 , further comprising:

utilizing the at least one API to receive, from the application of the second transport service provider, a route corresponding to the transport service request and location updates of the selected transportation provider; and

causing a map-based graphical user interface of the application of the first transport service provider on the requestor computing device to display the route corresponding to the transport service request and location updates of the selected transportation provider.

9. The computer-implemented method of claim 1 , further comprising:

utilizing the at least one API to receive, from the application of the second transport service provider, price information corresponding to the transport service request; and

receiving payment for the transport service request within the application of the first transport service provider on the requestor computing device.

10. A non-transitory computer-readable medium storing instructions that, when executed by at least one processor, cause a computer system to:

identify a geographic region associated with a requestor computing device, the requestor computing device having operating thereon an application operable to submit transport service requests, wherein the application is maintained by a first transport service provider associated with a first set of transportation providers;

determine, based on the geographic region, a second transport service provider associated with a second set of transportation providers, the second transport service provider associated with one or more application program interfaces (APIs) for which to interact with the second transport service provider;

digitally communicate, through at least one API of the one or more APIs, a transport service request to an application of the second transport service provider to request a transportation provider;

receive from the application of the second transport service provider, through the at least one API of the one or more APIs, a location of a selected transportation provider, from the second set of transportation providers, dispatched to fulfill the transport service request; and

provide, for display on a graphical user interface of the application of the first transport service provider on the requestor computing device, the location of the selected transportation provider dispatched to fulfill the transport service request.

11. The non-transitory computer-readable medium of claim 10 , further comprising instructions that, when executed by the at least one processor, cause the computer system to:

provide for display one or more transport service providers associated with the geographic region; and

receive information indicating a selection of the second transport service provider.

12. The non-transitory computer-readable medium of claim 10 , wherein determining the second transport service provider is further based at least in part on user preference information associated with a user account of the first transport service provider.

13. The non-transitory computer-readable medium of claim 10 , further comprising instructions that, when executed by the at least one processor, cause the computer system to provide, for display on the graphical user interface of the application of the first transport service provider on the requestor computing device, an onboarding page associated with the second transport service provider, the onboarding page including a terms of service associated with the second transport service provider.

14. The non-transitory computer-readable medium of claim 13 , further comprising instructions that, when executed by the at least one processor, cause the computer system to:

receive, from the requestor computing device, an indication of an acceptance of the terms of service; and

request, through the at least one API of the one or more APIs, an account creation with the second transport service provider.

15. The non-transitory computer-readable medium of claim 10 , further comprising instructions that, when executed by the at least one processor, cause the computer system to:

utilize the at least one API to receive, from the application of the second transport service provider, service types available via the second transport service provider; and

wherein the selected transportation provider dispatched to fulfill the transport service request is based on a selection of a service type from the service types available via the second transport service provider.

16. A system comprising:

at least one processor; and

at least one non-transitory computer-readable storage medium storing instructions that, when executed by the at least one processor, cause the system to:

identify a geographic region associated with a requestor computing device, the requestor computing device having operating thereon an application operable to submit transport service requests, wherein the application is maintained by a first transport service provider associated with a first set of transportation providers;

determine, based on the geographic region, a second transport service provider associated with a second set of transportation providers, the second transport service provider associated with one or more application program interfaces (APIs) for which to interact with the second transport service provider;

digitally communicate, through at least one API of the one or more APIs, a transport service request to an application of the second transport service provider to request a transportation provider;

receive from the application of the second transport service provider, through the at least one API of the one or more APIs, a location of a selected transportation provider, from the second set of transportation providers, dispatched to fulfill the transport service request; and

provide, for display on a graphical user interface of the application of the first transport service provider on the requestor computing device, the location of the selected transportation provider dispatched to fulfill the transport service request.

17. The system of claim 16 , further comprising instructions that, when executed by the at least one processor, cause the system to:

provide for display one or more transport service providers associated with the geographic region; and

receive information indicating a selection of the second transport service provider.

18. The system of claim 16 , wherein determining the second transport service provider is further based at least in part on user preference information associated with a user account of the first transport service provider.

19. The system of claim 16 , wherein the at least one API of the one or more APIs is based on a set of rules, wherein the set of rules is based at least in part on user preferences in a user profile associated with the first transport service provider or reliability criteria associated with the second transport service provider.

20. The system of claim 16 , further comprising instructions that, when executed by the at least one processor, cause the system to:

utilize the at least one API to receive, from the application of the second transport service provider, service types available via the second transport service provider; and

wherein the selected transportation provider dispatched to fulfill the transport service request is based on a selection of a service type from the service types available via the second transport service provider.

Assignments (2)
SECURITY INTEREST Recorded Nov 3, 2022
From: LYFT, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 061880/0237 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 22, 2017
From: SHEN, LIMIN; LODICK, MICHAEL; YOU, WEI; PINNER, JEFF
To: LYFT, INC.
Reel/Frame 042121/0523 →
Continuity (1)
Related Publication 20180189917A1 · Jul 5, 2018