Imports a domain zone from a remote nameserver.
1
//native
2
type Linode = {
3
token: string;
4
};
5
/**
6
* Import a domain
7
* Imports a domain zone from a remote nameserver.
8
*/
9
export async function main(
10
auth: Linode,
11
apiVersion: "v4" | "v4beta",
12
body: { domain: string; remote_nameserver: string },
13
) {
14
const url = new URL(`https://api.linode.com/${apiVersion}/domains/import`);
15
16
const response = await fetch(url, {
17
method: "POST",
18
headers: {
19
"Content-Type": "application/json",
20
Authorization: "Bearer " + auth.token,
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