v1

latestOpenAPI 3.0.32026-08-06138294578.6 KB
Connections

Execute Connection Proxy

Proxies an HTTP request to a connection's underlying API using the connection's stored credentials, subject to per-connection rate limits and size caps.

This endpoint is intended for controlled passthrough use, not as a general replacement for Polytomic's modeled endpoints. The request is executed with the connection's stored credentials and inherited base URL, headers, and query parameters.

Before building requests dynamically, call GET /api/connections/{id}/proxy/info to inspect the inherited base URL, blocked headers, accepted body types, and size and rate limits.

Important behavior

  • request.path must be relative and start with /.
  • Use either request.query or request.rawQuery, not both.
  • Caller-supplied headers are merged with inherited headers, but inherited auth headers cannot be overridden.
  • The proxy strips a fixed set of request and response headers for safety.
  • Response bodies larger than the configured maximum are truncated, and truncated is set to true.

To run a GET request asynchronously, set async to true. The initial response returns status: 202, jobId, jobStatus, and jobUrl. Poll GET /api/jobs/{type}/{id} with type=connectionproxy and the returned jobId until the job is complete. The completed job result includes the upstream status, sanitized headers, contentType, contentLength, latencyMs, and a short-lived bodyDownloadUrl for the upstream response body.

The response includes proxyCallId, which you can use to correlate the call with audit logs.

post/api/connections/{id}/proxy

Path parameters

idstring uuid required

Unique identifier of the connection to proxy the request through.

Example:248df4b7-aa70-47b8-a036-33ac447e668d

Unique identifier of the connection to proxy the request through.

Headers

X-Polytomic-Versionstring

Request body

asyncboolean

When true, submits a GET request for asynchronous execution and returns a job handle instead of a synchronous upstream response.

Example request

{
  "request": {
    "method": "GET",
    "path": "/v1/objects",
    "rawQuery": "ids=List(A,B,C)"
  }
}

Response

OK

Example response

{
  "data": {
    "contentType": "application/json",
    "jobId": "248df4b7-aa70-47b8-a036-33ac447e668d",
    "proxyCallId": "248df4b7-aa70-47b8-a036-33ac447e668d",
    "status": 200
  }
}