HTTP API

Source

As with other data sources, Polytomic enables syncing from arbitrary HTTP APIs using a data model.

Overview

Polytomic supports the following when extracting data from HTTP APIs:

  • GET and POST requests
  • JSON responses
  • Pagination ("next page" tokens or URIs; page size support)
  • Extracting elements based on a JSONPath expression
  • Custom HTTP headers/parameters

Setting up a new connection

  1. In Polytomic, go to Connections → Add Connection → HTTP API.
14601460
  1. Fill in the config fields. Here is a brief explanation of the various fields:
  • Base URL: the API's base URL. This can be a host (e.g. https://api.service.com) and can include a path if needed (e.g. https://service.com/api). To avoid having to revise your models, try to pick the shortest common path for your endpoints.
  • Headers/Query String Parameters (optional): any parameter that you need to include on every request can be put here.
    For example: a header containing your authorization key or token.
13801380

👍

Constructing Authorization Headers

Many times, APIs will require that you create a "Basic" or "Username and Password" Authentication header. This is done by encoding a username and password (often one of these is an API Key) into a new value. We have a tool that you can use to help construct these headers if you're not familiar with Base64 encoding, or don't have an easy way to encode the information.

  • Healthcheck endpoint (optional): a path that Polytomic will use to check if it can reach your API. Polytomic will periodically ping this endpoint with your included headers. A good option is a path that requires authentication. For example, many APIs supply a /me or /tokeninfo that you can use to make sure your authentication is working. Enter the path only (e.g. /tokeninfo).
  1. Click Save.