ZuploZuplo
LoginSign Up
  • Documentation
  • API Reference
Information
Analytics
    Get recent requests for a given deployment in the last 24 hoursgetGet statistics on requests by status code for a given deploymentget
API Keys - Buckets
    Lists bucketsgetCreates a bucketpostGets a bucketgetDeletes a bucketdeleteUpdates a bucketpatch
API Keys - Consumers
    Lists consumersgetCreates a consumerpostGets a consumergetDeletes a consumerdeleteUpdates a consumerpatchRoll consumer keyspost
API Keys - Keys
    Lists keysgetCreates an API keypostCreates multiple API keyspostGets an API keygetDeletes an API keydeleteUpdates an API keypatch
API Keys - Managers
    Lists managersgetCreates a managerpostDeletes a managerdelete
Audit Logs
    Query audit logsget
Build Logs
    Get build logsget
Client mTLS CA Certificates
    List Client mTLS CA CertificatesgetCreate Client mTLS CA CertificatepostDelete Client mTLS CA CertificatedeleteUpdate Client mTLS CA Certificatepatch
Custom Domains
    Get Custom DomainsgetCreate Custom DomainpostDelete a Custom DomaindeleteUpdate a Custom Domainpatch
Deployments
    Gets a deployment statusgetLists deploymentsgetUpload deployment sourcepostGet a deploymentgetDeletes a deploymentdeleteRe-deploy a deploymentpost
Environments
    Query environmentsgetGet an environmentget
MCP Servers
    API MCP ServerpostDocs MCP Serverpost
Metering - Features
    List featuresgetCreate featurepostGet featuregetDelete featuredelete
Metering - Meters
    List metersgetCreate meterpostGet metergetUpdate meterputDelete meterdeleteList meter group by valuesgetQuery metergetQuery meterpost
Metering - Plans
    List plansgetCreate a planpostGet plangetUpdate a planputDelete plandeleteArchive plan versionpostPublish planpost
Projects
    Create projectpost
Runtime Logs
    List request logsgetGet request log detailget
Tunnel Services
    Gets a provisioning statusgetGets a service configurationgetConfigures tunnel servicesput
Tunnels
    Lists tunnelsgetCreates a tunnelpostGets a tunnelgetDeletes a tunneldeleteRotates the tokenpostGets a teardown statusget
Variables
    Creates a variablepostUpdates a variablepatch
Other endpoints
    OpenAPI SpecificationgetLists accountsgetLists projectsgetWho Am Iget
Schemas
powered by Zudoku
Zuplo Developer API
Zuplo Developer API

Tunnels

List of endpoints available to perform operations on Tunnels.


Lists tunnels

GET
https://dev.zuplo.com
/v1/accounts/{accountName}/tunnels

Lists all tunnels belonging to this account.

Lists tunnels › path Parameters

accountName
​string · required

The name of the account. You can find this in your Zuplo Portal under Settings > Project Information.

Lists tunnels › Responses

The request has succeeded.

Zuplo.Tunnels.TunnelList
​Zuplo.Tunnels.TunnelListItem[] · required
limit
​integer · uint32
offset
​integer · uint32
total
​integer · uint32
GET/v1/accounts/{accountName}/tunnels
curl https://dev.zuplo.com/v1/accounts/:accountName/tunnels
Example Responses
{ "data": [ { "id": "tnl_JcHFzTcJ9y4GU69lKBOaxFYU", "name": "api-service-tunnel" } ] }
json
application/json

Creates a tunnel

POST
https://dev.zuplo.com
/v1/accounts/{accountName}/tunnels

Creates a new tunnel for this account.

Creates a tunnel › path Parameters

accountName
​string · required

The name of the account. You can find this in your Zuplo Portal under Settings > Project Information.

Creates a tunnel › Request Body

Tunnels allow you to expose services running on bare metal, on-premises, or other non-cloud providers to the Zuplo platform. [Further reading](https://zuplo.com/docs/articles/secure-tunnel).
Zuplo.Tunnels.Tunnel
tunnelId
​string · readOnly · required
name
​string · pattern: ^[a-zA-Z0-9-]{3,24}$ · required

A friendly name for the tunnel.

Example: api-service-tunnel
token
​string · readOnly · required

Set your TUNNEL_TOKEN to this value to connect to the tunnel.

Example: eyJhIjoiODJh[..]m89In0=

Creates a tunnel › Responses

The request has succeeded and a new resource has been created as a result.

Tunnels allow you to expose services running on bare metal, on-premises, or other non-cloud providers to the Zuplo platform. [Further reading](https://zuplo.com/docs/articles/secure-tunnel).
Zuplo.Tunnels.Tunnel
tunnelId
​string · readOnly · required
name
​string · pattern: ^[a-zA-Z0-9-]{3,24}$ · required

A friendly name for the tunnel.

Example: api-service-tunnel
token
​string · readOnly · required

Set your TUNNEL_TOKEN to this value to connect to the tunnel.

Example: eyJhIjoiODJh[..]m89In0=
POST/v1/accounts/{accountName}/tunnels
curl https://dev.zuplo.com/v1/accounts/:accountName/tunnels \ --request POST \ --header 'Content-Type: application/json' \ --data '{ "tunnelId": "tnl_JcHFzTcJ9y4GU69lKBOaxFYU", "name": "api-service-tunnel", "token": "eyJhIjoiODJhNGM0ZTBlYWY3ZmU3YjQyMWRlZHU1ODhlNjg1ZGMiLCJ0IjoiNjY3ZWZhODktYzIyNS00NTIyLWI0M2EtYTgwYzY0OTgxMGY1IiwicyI6IkY5RGdVNnNNOTJWT245OUlUSWxMazVwY3lHV0ZLVG1jcHg2d0I5TkR4Vm89In0=" }'
Example Request Body
{ "tunnelId": "tnl_JcHFzTcJ9y4GU69lKBOaxFYU", "name": "api-service-tunnel", "token": "eyJhIjoiODJhNGM0ZTBlYWY3ZmU3YjQyMWRlZHU1ODhlNjg1ZGMiLCJ0IjoiNjY3ZWZhODktYzIyNS00NTIyLWI0M2EtYTgwYzY0OTgxMGY1IiwicyI6IkY5RGdVNnNNOTJWT245OUlUSWxMazVwY3lHV0ZLVG1jcHg2d0I5TkR4Vm89In0=" }
json
Example Responses
{ "tunnelId": "tnl_JcHFzTcJ9y4GU69lKBOaxFYU", "name": "api-service-tunnel", "token": "eyJhIjoiODJhNGM0ZTBlYWY3ZmU3YjQyMWRlZHU1ODhlNjg1ZGMiLCJ0IjoiNjY3ZWZhODktYzIyNS00NTIyLWI0M2EtYTgwYzY0OTgxMGY1IiwicyI6IkY5RGdVNnNNOTJWT245OUlUSWxMazVwY3lHV0ZLVG1jcHg2d0I5TkR4Vm89In0=" }
json
application/json

Gets a tunnel

GET
https://dev.zuplo.com
/v1/accounts/{accountName}/tunnels/{tunnelId}

Returns the details for a tunnel, including the token used to connect to the tunnel.

Gets a tunnel › path Parameters

accountName
​string · required

The name of the account. You can find this in your Zuplo Portal under Settings > Project Information.

tunnelId
​string · required

The ID of the tunnel.

Gets a tunnel › Responses

The request has succeeded.

Tunnels allow you to expose services running on bare metal, on-premises, or other non-cloud providers to the Zuplo platform. [Further reading](https://zuplo.com/docs/articles/secure-tunnel).
Zuplo.Tunnels.Tunnel
tunnelId
​string · readOnly · required
name
​string · pattern: ^[a-zA-Z0-9-]{3,24}$ · required

A friendly name for the tunnel.

Example: api-service-tunnel
token
​string · readOnly · required

Set your TUNNEL_TOKEN to this value to connect to the tunnel.

Example: eyJhIjoiODJh[..]m89In0=
GET/v1/accounts/{accountName}/tunnels/{tunnelId}
curl https://dev.zuplo.com/v1/accounts/:accountName/tunnels/:tunnelId
Example Responses
{ "tunnelId": "tnl_JcHFzTcJ9y4GU69lKBOaxFYU", "name": "api-service-tunnel", "token": "eyJhIjoiODJhNGM0ZTBlYWY3ZmU3YjQyMWRlZHU1ODhlNjg1ZGMiLCJ0IjoiNjY3ZWZhODktYzIyNS00NTIyLWI0M2EtYTgwYzY0OTgxMGY1IiwicyI6IkY5RGdVNnNNOTJWT245OUlUSWxMazVwY3lHV0ZLVG1jcHg2d0I5TkR4Vm89In0=" }
json
application/json

Deletes a tunnel

DELETE
https://dev.zuplo.com
/v1/accounts/{accountName}/tunnels/{tunnelId}

Deletes a tunnel and any services that it has.

Deletes a tunnel › path Parameters

accountName
​string · required

The name of the account. You can find this in your Zuplo Portal under Settings > Project Information.

tunnelId
​string · required

The ID of the tunnel.

Deletes a tunnel › Responses

The request has succeeded.

Zuplo.Tunnels.TunnelTeardownOperation
id
​string · readOnly · required
status
​string · enum · required
Enum values:
in-progress
success
error
Example: success
message
​string
details
​string
DELETE/v1/accounts/{accountName}/tunnels/{tunnelId}
curl https://dev.zuplo.com/v1/accounts/:accountName/tunnels/:tunnelId \ --request DELETE
Example Responses
{ "id": "tst_1vmvAjaCun9Mfeosn3Og4ddD", "status": "success", "message": "Successfully torn down tunnel.", "details": "details" }
json
application/json

Rotates the token

POST
https://dev.zuplo.com
/v1/accounts/{accountName}/tunnels/{tunnelId}/$rotate-token

Rotates the token used to connect to the tunnel.

Rotates the token › path Parameters

accountName
​string · required

The name of the account. You can find this in your Zuplo Portal under Settings > Project Information.

tunnelId
​string · required

The ID of the tunnel.

Rotates the token › Responses

The request has succeeded.

Tunnels allow you to expose services running on bare metal, on-premises, or other non-cloud providers to the Zuplo platform. [Further reading](https://zuplo.com/docs/articles/secure-tunnel).
Zuplo.Tunnels.Tunnel
tunnelId
​string · readOnly · required
name
​string · pattern: ^[a-zA-Z0-9-]{3,24}$ · required

A friendly name for the tunnel.

Example: api-service-tunnel
token
​string · readOnly · required

Set your TUNNEL_TOKEN to this value to connect to the tunnel.

Example: eyJhIjoiODJh[..]m89In0=
POST/v1/accounts/{accountName}/tunnels/{tunnelId}/$rotate-token
curl 'https://dev.zuplo.com/v1/accounts/:accountName/tunnels/:tunnelId/$rotate-token' \ --request POST
Example Responses
{ "tunnelId": "tnl_JcHFzTcJ9y4GU69lKBOaxFYU", "name": "api-service-tunnel", "token": "eyJhIjoiODJhNGM0ZTBlYWY3ZmU3YjQyMWRlZHU1ODhlNjg1ZGMiLCJ0IjoiNjY3ZWZhODktYzIyNS00NTIyLWI0M2EtYTgwYzY0OTgxMGY1IiwicyI6IkY5RGdVNnNNOTJWT245OUlUSWxMazVwY3lHV0ZLVG1jcHg2d0I5TkR4Vm89In0=" }
json
application/json

Gets a teardown status

GET
https://dev.zuplo.com
/v1/accounts/{accountName}/tunnels/{tunnelId}/teardown-operations/{operationId}

This endpoint returns the status of the deletion of the tunnel. Tearing down the tunnel is an asynchronous process so this endpoint allows you to poll the status.

Gets a teardown status › path Parameters

accountName
​string · required

The name of the account. You can find this in your Zuplo Portal under Settings > Project Information.

tunnelId
​string · required

The ID of the tunnel.

operationId
​string · required

The ID of the deletion operation.

Gets a teardown status › Responses

The request has succeeded.

Zuplo.Tunnels.TunnelTeardownOperation
id
​string · readOnly · required
status
​string · enum · required
Enum values:
in-progress
success
error
Example: success
message
​string
details
​string
GET/v1/accounts/{accountName}/tunnels/{tunnelId}/teardown-operations/{operationId}
curl https://dev.zuplo.com/v1/accounts/:accountName/tunnels/:tunnelId/teardown-operations/:operationId
Example Responses
{ "id": "tst_1vmvAjaCun9Mfeosn3Og4ddD", "status": "success", "message": "Successfully torn down tunnel.", "details": "details" }
json
application/json

Tunnel ServicesVariables