External Collections

Introduction

External collections can be created to enable the proxying of data retrieval from external APIs.

External collections share namespace with regular collections, and the endpoints for external collections use the following URL format:

https://<host-name>/<api-path>/<external-collection-name>

Any request from your API consumers to an external collection is forwarded to the external provider.

Only GET request are currently supported for external collections.

Authentication with Service connection

Request forwarded to protected external endpoints are authenticated using defined service connections.

Service connections perform authentication by sending credentials to the authentication URL of the external provider.

Example of OAuth2Token authentication with a client-id and client-secret:

POST /v1/oauth2/token HTTP/1.1
Host: external-provider-hostname.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 104

grant_type=client_credentials&client_id=hTBfClSsrPZnt7CpHiRollbhvndfC&client_secret=XfasmAaAKuNYuhodShlQ


Create service connections in the developer portal:

Developer portal service connection

The token acquired from the external provider's authentication endpoint is re-used for subsequent requests to the origin until it expires. The first request made to an external collection after the token has expired will trigger a new authentication request for a fresh token.

Response caching

TBD

Property mapping

TBD

View access

TBD