1
//native
2
type Planetscale = {
3
serviceTokenId: string;
4
serviceToken: string;
5
};
6
/**
7
* Get keyspace rollout status
8
*
9
10
*/
11
export async function main(
12
auth: Planetscale,
13
organization: string,
14
database: string,
15
branch: string,
16
name: string,
17
) {
18
const url = new URL(
19
`https://api.planetscale.com/v1/organizations/${organization}/databases/${database}/branches/${branch}/keyspaces/${name}/rollout-status`,
20
);
21
22
const response = await fetch(url, {
23
method: "GET",
24
headers: {
25
Authorization: `${auth.serviceTokenId}:${auth.serviceToken}`,
26
},
27
body: undefined,
28
});
29
if (!response.ok) {
30
const text = await response.text();
31
throw new Error(`${response.status} ${text}`);
32
}
33
return await response.json();
34
35