---
title: "Proxy HTTP request through secure VPC"
method: POST
path: "/v1/secure-proxy"
tags: ["proxy"]
---

# Proxy HTTP request through secure VPC

`POST /v1/secure-proxy`

Routes an HTTP request through a VPC with either static IP egress or VPN secure link access.
The VPC mode is determined by the referenced secure_proxy use case configuration.
For secure_link mode, the target URL must match the use case's allowed_domains whitelist.

## Request body

- SecureProxyRequest
  - `integration_id` string, uuid, required — Integration ID that owns the secure_proxy use case
  - `use_case_id` string, uuid — Use case ID (provide either use_case_id or use_case_slug)
  - `use_case_slug` string — Use case slug (provide either use_case_id or use_case_slug)
  - `url` string, uri, required — Target URL to proxy the request to
  - `method` 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE', required — HTTP method
  - `headers` object — Request headers to forward
  - `body` unknown
  - `response_type` 'json' | 'binary' — Expected response type

## Response `200`

Proxied response from the target URL

- SecureProxyResponse
  - `status_code` integer — HTTP status code from the upstream response
  - `headers` object — Response headers from upstream
  - `body` unknown

## Other responses

- `400` — Bad request
- `401` — Unauthorized request
- `403` — Forbidden - insufficient permissions or target domain not whitelisted
- `502` — Upstream failure: epilot could not obtain an HTTP response from the proxied target (e.g. TLS handshake failure, connection refused/reset, DNS failure or timeout). The body's `code`/`reason` identify the underlying cause, distinguishing a remote-side problem from an epilot-side one. When the target *does* answer with its own status, that status and body are passed through unchanged via `SecureProxyResponse` instead.
- `503` — VPC proxy not available for the requested mode
- `504` — Upstream timeout

---

[API](https://skmtc.net/epilot/apis/integration-toolkit-api.md) · [All operations](https://skmtc.net/epilot/apis/integration-toolkit-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/epilot/integration-toolkit-api/revisions/c24837d75096/schema)
