# US 2021/0243164 A1 · Locally representing a remote application programming interface (api) endpoint within an application platform

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2021/0243164 A1
- Document ID: US20210243164A1
- Status: Published application
- Kind: A1
- Application number: 16/776,735
- Filed: 2020-01-30
- Published: 2021-08-05
- Earliest claimed: 2020-01-30
- Assignees: Hewlett Packard Enterprise Development LP
- Applicants: Hewlett Packard Enterprise Development LP
- Inventors: Paul Murray; Nicholas Randon
- Web page: https://patentgrep.com/patent/US20210243164A1

## CPC

- H04L 63/0281: {Proxies}
- H04L 41/0806: for initial configuration or provisioning, e.g. plug-and-play
- H04L 61/4511: using domain name system [DNS]
- H04L 63/029: {Firewall traversal, e.g. tunnelling or, creating pinholes}
- H04L 67/10: in which an application is distributed across nodes in the network (software deployment G06F8/60; multiprogramming arrangements G06F9/46)
- H04L 41/145: {involving simulating, designing, planning or modelling of a network}
- H04L 61/5007: Internet protocol [IP] addresses
- H04L 61/5076: Update or notification mechanisms, e.g. DynDNS
- H04L 63/0272: {Virtual private networks}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Example implementations relate to exposing on-premise API endpoints in a cloud-based application platform. The application platform receives information regarding a forwarding proxy associated with a private network and information regarding a remote application programming interface (API) endpoint within the private network. A mapping between a resource model of the application platform to a tunnel established between a forwarding client of the application platform and the forwarding proxy is created by a controller of the application platform causing the forwarding client to instantiate a port corresponding to a forwarding route for the remote API endpoint based on the information regarding the forwarding proxy and the remote API endpoint. The remote API endpoint is locally represented within the application platform in a form of an instance of a service abstraction provided by the application platform.

## Claims

### Claim 1

A computer-implemented method comprising:
receiving, by an application platform operating within a public cloud, information regarding a forwarding proxy associated with a private network and information regarding a remote application programming interface (API) endpoint within the private network;
creating, by a controller of the application platform, a mapping between a resource model of the application platform to a tunnel established between a forwarding client of the application platform and the forwarding proxy by causing the forwarding client to instantiate a port corresponding to a forwarding route for the remote API endpoint based on the information regarding the forwarding proxy and the remote API endpoint; and
locally representing the remote API endpoint within the application platform in a form of an instance of a service abstraction provided by the application platform by:
configuring an instance of an endpoint abstraction provided by the application platform that maps a name and port of the remote API endpoint to an address and the port of the forwarding client; and
configuring endpoint attributes of the instance of the service abstraction with a protocol of the remote API endpoint and a reference to the instance of the endpoint abstraction.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1, wherein the application platform comprises a container cluster, the service abstraction comprises a container orchestrator service resource, and the endpoint abstraction comprises a container orchestrator endpoints resource.

### Claim 3 (depends on 2)

The computer-implemented method of claim 2, further comprising when the information regarding the remote API endpoint includes a domain name in a domain of the private network, creating, by the controller, a corresponding Domain Name System (DNS) entry in a private DNS zone of an upstream nameserver associated with the container cluster.

### Claim 4 (depends on 3)

The computer-implemented method of claim 3, wherein when the instance of the service abstraction has a cluster Internet Protocol (IP) address, then the corresponding DNS entry associates the cluster IP address with a name in the corresponding DNS entry.

### Claim 5 (depends on 3)

The computer-implemented method of claim 3, wherein when the instance of the service abstraction comprises a headless service, then the corresponding DNS entry associates the address and the port of the forwarding client with a name in the corresponding DNS entry.

### Claim 6 (depends on 1)

The computer-implemented method of claim 1, wherein the information regarding the forwarding proxy comprises a universal unique identifier (UUID).

### Claim 7 (depends on 1)

The computer-implemented method of claim 1, wherein the information regarding the remote API endpoint comprises a name of the remote API endpoint, an address of the remote API endpoint in an addressing scheme of the private network, a port of the remote API endpoint and a protocol used by the remote API endpoint.

### Claim 8 (depends on 1)

The computer-implemented method of claim 1, wherein said mapping between a resource model of the application platform to a tunnel established between a forwarding client of the application platform and the forwarding proxy facilitates communication with the remote API endpoint by a container in the application platform by allowing the container to direct network traffic intended for the remote API endpoint to the port on the forwarding client.

### Claim 9

A non-transitory machine readable medium storing instructions executable by a processing resource of an application platform operating within a public cloud, the non-transitory machine readable medium comprising instructions to:
receive information regarding a forwarding proxy associated with a private network and information regarding a remote application programming interface (API) endpoint within the private network;
create, by a controller of the application platform, a mapping between a resource model of the application platform to a tunnel established between a forwarding client of the application platform and the forwarding proxy by causing the forwarding client to instantiate a port corresponding to a forwarding route for the remote API endpoint based on the information regarding the forwarding proxy and the remote API endpoint;
locally represent the remote API endpoint within the application platform in a form of an instance of a service abstraction provided by the application platform by:
configuring an instance of an endpoint abstraction provided by the application platform that maps a name and port of the remote API endpoint to an address and the port of the forwarding client; and
configuring endpoint attributes of the instance of the service abstraction with a protocol of the remote API endpoint and a reference to the instance of the endpoint abstraction.

### Claim 10 (depends on 9)

The non-transitory machine readable medium of claim 9, wherein the application platform comprises a container cluster, the service abstraction comprises a container orchestrator service resource, and the endpoint abstraction comprises a container orchestrator endpoints resource.

### Claim 11 (depends on 10)

The non-transitory machine readable medium of claim 10, further comprising instructions to when the information regarding the remote API endpoint includes a domain name in a domain of the private network, create, by the controller, a corresponding Domain Name System (DNS) entry in a private DNS zone of an upstream nameserver associated with the container cluster.

### Claim 12 (depends on 11)

The non-transitory machine readable medium of claim 11, when the instance of the service abstraction has a cluster Internet Protocol (IP) address, then the corresponding DNS entry associates the cluster IP address with a name in the corresponding DNS entry.

### Claim 13 (depends on 11)

The non-transitory machine readable medium of claim 11, wherein when the instance of the service abstraction comprises a headless service, then the corresponding DNS entry associates the address and the port of the forwarding client with a name in the corresponding DNS entry.

### Claim 14 (depends on 9)

The non-transitory machine readable medium of claim 9, wherein the information regarding the forwarding proxy comprises a universal unique identifier (UUID).

### Claim 15 (depends on 9)

The non-transitory machine readable medium of claim 9, wherein the information regarding the remote API endpoint comprises a name of the remote API endpoint, an address of the remote API endpoint in an addressing scheme of the private network, a port of the remote API endpoint and a protocol used by the remote API endpoint.

### Claim 16 (depends on 9)

The non-transitory machine readable medium of claim 9, wherein said mapping between a resource model of the application platform to a tunnel established between a forwarding client of the application platform and the forwarding proxy facilitates communication with the remote API endpoint by a container in the application platform by allowing the container to direct network traffic intended for the remote API endpoint to the port on the forwarding client.

### Claim 17

A system comprising:
a processing resource; and
a non-transitory computer-readable medium, coupled to the processing resource, having stored therein instructions that when executed by the processing resource cause the processing resource to:
receive, by an application platform, information regarding a forwarding proxy associated with a private network and information regarding a remote application programming interface (API) endpoint within the private network;
create, by a controller of the application platform, a mapping between a resource model of the application platform to a tunnel established between a forwarding client of the application platform and the forwarding proxy by causing the forwarding client to instantiate a port corresponding to a forwarding route for the remote API endpoint based on the information regarding the forwarding proxy and the remote API endpoint;
locally represent the remote API endpoint within the application platform in a form of an instance of a service abstraction provided by the application platform by:
configuring an instance of an endpoint abstraction provided by the application platform that maps a name and port of the remote API endpoint to an address and the port of the forwarding client; and
configuring endpoint attributes of the instance of the service abstraction with a protocol of the remote API endpoint and a reference to the instance of the endpoint abstraction.

### Claim 18 (depends on 17)

The system of claim 17, wherein the application platform comprises a container cluster, the service abstraction comprises a container orchestrator service resource, and the endpoint abstraction comprises a container orchestrator endpoints resource.

### Claim 19 (depends on 17)

The system claim 17, wherein the instructions further cause the processing resource to when the information regarding the remote API endpoint includes a domain name in a domain of the private network, create, by the controller, a corresponding Domain Name System (DNS) entry in a private DNS zone of an upstream nameserver associated with the container cluster.

### Claim 20 (depends on 17)

The system of claim 17, wherein said mapping between a resource model of the application platform to a tunnel established between a forwarding client of the application platform and the forwarding proxy facilitates communication with the remote API endpoint by a container in the application platform by allowing the container to direct network traffic intended for the remote API endpoint to the port on the forwarding client.
