Creates a new workspace with the user requesting it as its single owner.
1
//native
2
type Xata = {
3
apiKey: string
4
}
5
/**
6
* Create a new workspace
7
* Creates a new workspace with the user requesting it as its single owner.
8
*/
9
export async function main(auth: Xata, body: { name: string; slug?: string }) {
10
const url = new URL(`https://api.xata.io/workspaces`)
11
12
const response = await fetch(url, {
13
method: 'POST',
14
headers: {
15
'Content-Type': 'application/json',
16
Authorization: 'Bearer ' + auth.apiKey
17
},
18
body: JSON.stringify(body)
19
})
20
if (!response.ok) {
21
const text = await response.text()
22
throw new Error(`${response.status} ${text}`)
23
24
return await response.json()
25
26