---
title: "Create a New Tunnel"
method: POST
path: "/v1/tunnels"
tags: ["Tunnels"]
---

# Create a New Tunnel

`POST /v1/tunnels`

You may create your own tunnel using this action. It takes a JSON object containing a tunnel request with a specified destination. Paid plans have an option to specify either encryption, subdomain or full domain.

## Request body

- Tunnel
  - `id` string
  - `created_at` integer
  - `updated_at` integer
  - `destination` string
  - `name` string
  - `region` '' | 'us-west' | 'eu' | 'au' — Tunnel region
  - `group` string — Groups allow agents to subscribe to one or more tunnels
  - `host` string
  - `protocol` string
  - `description` string
  - `auth` TunnelAuth
    - `id` string
    - `created_at` integer
    - `updated_at` integer
    - `type` string
    - `username` string
    - `password` string
    - `token` string
  - `crypto` 'off' | 'flexible' | 'full' | 'full-strict' | 'tls-pass-through' — Tunnel encryption type

## Response `201`

Created

- Tunnel
  - `id` string
  - `created_at` integer
  - `updated_at` integer
  - `destination` string
  - `name` string
  - `region` '' | 'us-west' | 'eu' | 'au' — Tunnel region
  - `group` string — Groups allow agents to subscribe to one or more tunnels
  - `host` string
  - `protocol` string
  - `description` string
  - `auth` TunnelAuth
    - `id` string
    - `created_at` integer
    - `updated_at` integer
    - `type` string
    - `username` string
    - `password` string
    - `token` string
  - `crypto` 'off' | 'flexible' | 'full' | 'full-strict' | 'tls-pass-through' — Tunnel encryption type

## Other responses

- `400` — Invalid tunnel request supplied

---

[API](https://skmtc.dev/webhookrelay/apis/webhook-relay.md) · [All operations](https://skmtc.dev/webhookrelay/apis/webhook-relay/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/webhookrelay/webhook-relay/revisions/ce8fd4d3cf19/schema)
