Skip to main content
POST
/
v1
/
remote-tunnels
Create remote tunnel
curl --request POST \
  --url https://api.qa.tech/v1/remote-tunnels \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "ports": [
    {
      "localPort": 123,
      "protocol": "http",
      "subdomain": "<string>"
    }
  ],
  "public": true
}
'
{
  "runnerId": "<string>",
  "hostnames": [
    {
      "localPort": 123,
      "url": "<string>"
    }
  ],
  "tunnelToken": "<string>",
  "expiresAt": "<string>"
}

Documentation Index

Fetch the complete documentation index at: https://docs.qa.tech/llms.txt

Use this file to discover all available pages before exploring further.

Body

application/json

Request body to create a new remote tunnel

ports
object[]
required

One or more local ports to expose via the tunnel

public
boolean

If true, the tunnel is publicly accessible without Cloudflare Access authentication

Response

200 - application/json

The request has succeeded.

Response after successfully creating a remote tunnel

runnerId
string
required

Our identifier for this runner, used in subsequent API calls

hostnames
object[]
required

Public hostnames mapped to local ports

tunnelToken
string
required

cloudflared token to start the tunnel daemon

expiresAt
string
required

ISO timestamp when this tunnel will expire