Creates a new tunnel for this account.
1
//native
2
type Zuplo = {
3
apiKey: string
4
}
5
/**
6
* Creates a tunnel
7
* Creates a new tunnel for this account.
8
*/
9
export async function main(
10
auth: Zuplo,
11
accountName: string,
12
body: { id: string; name: string; token: string }
13
) {
14
const url = new URL(`https://dev.zuplo.com/v1/accounts/${accountName}/tunnels`)
15
16
const response = await fetch(url, {
17
method: 'POST',
18
headers: {
19
'Content-Type': 'application/json',
20
Authorization: 'Bearer ' + auth.apiKey
21
},
22
body: JSON.stringify(body)
23
})
24
if (!response.ok) {
25
const text = await response.text()
26
throw new Error(`${response.status} ${text}`)
27
28
return await response.json()
29
30