IP Library Granted Patent US 9,325,699
Granted Patent B2
US 9,325,699 · App. 13/928,066 · Granted Apr 26, 2016

Method for apparatus for routing application programming interface (API) calls

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 9,325,699
App. No.
13/928,066
Granted
Apr 26, 2016
Kind
B2
Abstract

A method and apparatus for routing Application Programming Interface (API) calls from a partner entity to a telephony service provider (TSP) network are provided herein. In some embodiments, a method for routing API calls may include receiving a first message including an API call and a partner API key used to authenticate the partner entity on the TSP network to access a partner API layer disposed on the TSP network, extracting the partner API key from the first message, performing an authentication process to authenticate an identity of the partner entity using at least the extracted partner API key, and routing the first message based on results of the authentication process. In some embodiments, the first message is routed to the partner API layer disposed on the TSP network when the identity of the partner entity is authenticated.

Claims (55)

1. A method for routing Application Programming Interface (API) calls from a partner entity to a telephony service provider (TSP) network, wherein the partner entity is an external service provider that provides provisioning services and/or telephony services to customers of the TSP, the method comprising:

receiving a first message including an API call and a partner API key used to authenticate the partner entity on the TSP network to access a partner API layer disposed on the TSP network;

extracting the partner API key from the first message;

performing an authentication process to authenticate an identity of the partner entity using at least the extracted partner API key; and

routing the first message to the partner API layer based on the API call when the partner API key is authenticated.

2. The method of claim 1 , wherein the first message is routed to the partner API layer disposed on the TSP network when the identity of the partner entity is authenticated.

3. The method of claim 1 , wherein the first message is discarded and access to the partner API layer is denied when the identity of the partner entity is not authenticated.

4. The method of claim 3 , further comprising:

sending an error message to the partner entity denying access to the partner API layer.

5. The method of claim 1 , wherein the authentication process includes validating the extracted partner API key against a stored API key generated for the partner entity.

6. The method of claim 5 , wherein the first message is received from one or more devices disposed on a partner network associated with the partner entity.

7. The method of claim 6 , wherein the authentication process further includes comparing an identity of the one or more devices from which the first message was received against a stored list of devices associated with the partner entity.

8. The method of claim 1 , wherein the first message is a service request message, and wherein the partner API key is embedded in a Simple Object Access Protocol (SOAP) envelope body of the service request message.

9. The method of claim 8 , wherein a unique partner ID identifying the partner entity is further included in the SOAP envelope body along with the partner API key.

10. The method of claim 1 , wherein the method is performed by a secure proxy layer communicatively coupled to the partner entity and the partner API.

11. The method of claim 10 , wherein the secure proxy layer is Web based.

12. The method of claim 11 , wherein the first message is received over a Hypertext Transfer Protocol Secure (HTTPS) connection.

13. The method of claim 1 , wherein prior to receiving the first message including the API call, the method further comprises:

receiving a request to establish the partner entity on the TSP network;

generating the partner API key used to provide the partner entity access to the partner API layer; and

sending the generated partner API key to the partner entity.

14. The method of claim 2 , further comprising:

extracting the API call from the message;

determining that the partner entity has been authorized to use the API call included in the first message; and

routing the API call to downstream network components disposed on the TSP network based on the determination that the partner entity has been authorized to use the API call.

15. The method of claim 2 , further comprising:

extracting the API call from the message;

determining that the partner entity is not authorized to use the API call included in the message; and

sending an error message to the partner entity denying use of the API call.

16. The method of claim 1 , further comprising:

receiving a second message including call back API call and a second partner API key used to authenticate the TSP on a network associated with the partner entity to access a partner data;

extracting the second partner API key from the second message;

performing a second authentication process to determine an identity of the TSP using at least the extracted second partner API key; and

routing the second message based on results of the second authentication process.

17. A secure proxy layer device for routing Application Programming Interface (API) calls from a partner entity to a telephony service provider (TSP) network, wherein the partner entity is an external service provider that provides provisioning services and/or telephony services to customers of the TSP, the secure proxy layer device comprising:

a) at least one processor;

b) at least one input device; and

c) at least one storage device storing processor-executable instructions which, when executed by the at least one processor, performs a method including

1) receiving a first message including an API call and a partner API key used to authenticate the partner entity on the TSP network to access a partner API layer disposed on the TSP network,

2) extracting the partner API key from the first message,

3) performing an authentication process to authenticate an identity of the partner entity using at least the extracted partner API key; and

4) routing the first message to the partner API layer based on the API call when the partner API key is authenticated.

18. The secure proxy layer device of claim 17 , wherein the first message is routed to the partner API layer disposed on the TSP network when the identity of the partner entity is authenticated.

19. The secure proxy layer device of claim 17 , wherein the first message is discarded and access to the partner API layer is denied when the identity of the partner entity is not authenticated.

20. The secure proxy layer device of claim 19 , wherein the method further comprises:

sending an error message to the partner entity denying access to the partner API layer.

21. The secure proxy layer device of claim 17 , wherein the authentication process includes validating the extracted partner API key against a stored API key generated for the partner entity.

22. The secure proxy layer device of claim 21 , wherein the first message is received from one or more devices disposed on a partner network associated with the partner entity, and wherein the authentication process further includes comparing an identity of the one or more devices from which the first message was received against a stored list of devices associated with the partner entity.

23. A non-transient computer readable medium for storing computer instructions that, when executed by at least one processor causes the at least one processor to perform a method for routing Application Programming Interface (API) calls from a partner entity to a telephony service provider (TSP) network, wherein the partner entity is an external service provider that provides provisioning services and/or telephony services to customers of the TSP, the method comprising:

receiving a first message including an API call and a partner API key used to authenticate the partner entity on the TSP network to access a partner API layer disposed on the TSP network;

extracting the partner API key from the first message;

performing an authentication process to authenticate an identity of the partner entity using at least the extracted partner API key; and

routing the first message to the partner API layer based on the API call when the partner API key is authenticated.

24. The computer readable medium of claim 23 , wherein the method further comprises:

throttling API requests based on criteria relating to the partner entity.

Assignments (10)
RELEASE OF SECURITY INTEREST Recorded Jul 28, 2022
From: JPMORGAN CHASE BANK, N.A.
To: VONAGE AMERICA INC.; VONAGE HOLDINGS CORP.; VONAGE BUSINESS INC.; NEXMO INC.; TOKBOX, INC.
Reel/Frame 061002/0340 →
CHANGE OF NAME Recorded Jun 6, 2022
From: VONAGE AMERICA INC.
To: VONAGE AMERICA LLC
Reel/Frame 060284/0435 →
SECURITY INTEREST Recorded Nov 12, 2018
From: VONAGE AMERICA INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 047502/0628 →
MERGER AND CHANGE OF NAME Recorded Feb 8, 2016
From: VONAGE NETWORK LLC; VONAGE AMERICA INC.
To: VONAGE AMERICA INC.
Reel/Frame 037687/0471 →
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENT APPLICATION NUMBER 13966486 PREVIOUSLY RECORDED ON REEL 033545 FRAME 0424. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Jan 21, 2016
From: VONAGE HOLDINGS CORP.; VONAGE NETWORK LLC; VONAGE BUSINESS SOLUTIONS INC.; VONAGE AMERICA INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 037570/0203 →
SECURITY INTEREST Recorded Jul 29, 2015
From: VONAGE HOLDINGS CORP.; VONAGE AMERICA INC.; VONAGE BUSINESS SOLUTIONS, INC.; VONAGE NETWORK LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 036205/0485 →
SECURITY INTEREST Recorded Aug 14, 2014
From: VONAGE HOLDINGS CORP.; VONAGE NETWORK LLC; VONAGE BUSINESS SOLUTIONS INC.; VONAGE AMERICA INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 033545/0424 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 6, 2014
From: ABOUGHANAIMA, MABROUK; GORREPATI, CHAKRAPANI; OTTUR, DEEPAK
To: VONAGE NETWORK LLC
Reel/Frame 032830/0412 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 6, 2014
From: ERICKSON, JOHN R.
To: VONAGE HOLDINGS CORP.
Reel/Frame 032830/0583 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 6, 2014
From: VONAGE HOLDINGS CORP.
To: VONAGE NETWORK LLC
Reel/Frame 032830/0694 →