//native
type Gitbook = {
token: string;
};
/**
* Create a signed URL to upload a file
* Generate a pre-signed URL that can be used to upload a file to storage
*/
export async function main(
auth: Gitbook,
organizationId: string,
body: {
file: { name: string; type: string; size: number };
kind: "customization_font";
},
) {
const url = new URL(`https://api.gitbook.com/v1/orgs/${organizationId}/storage/upload`);
const response = await fetch(url, {
method: "POST",
headers: {
"Content-Type": "application/json",
Authorization: "Bearer " + auth.token,
},
body: JSON.stringify(body),
});
if (!response.ok) {
const text = await response.text();
throw new Error(`${response.status} ${text}`);
}
return await response.json();
}
Submitted by hugo697 235 days ago