Creates an API key for the application specified.
1
//native
2
type Ably = {
3
accessToken: string;
4
};
5
/**
6
* Creates a key
7
* Creates an API key for the application specified.
8
*/
9
export async function main(
10
auth: Ably,
11
app_id: string,
12
body: { name: string; capability: {} },
13
) {
14
const url = new URL(`https://control.ably.net/v1/apps/${app_id}/keys`);
15
16
const response = await fetch(url, {
17
method: "POST",
18
headers: {
19
"Content-Type": "application/json",
20
Authorization: "Bearer " + auth.accessToken,
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