//native
type Calendly = {
	token: string
}
export async function main(
	auth: Calendly,
	uuid: string,
	count: string | undefined,
	page_token: string | undefined,
	sort: string | undefined,
	email: string | undefined,
	status: 'pending' | 'accepted' | 'declined' | undefined
) {
	const url = new URL(`https://api.calendly.com/organizations/${uuid}/invitations`)
	for (const [k, v] of [
		['count', count],
		['page_token', page_token],
		['sort', sort],
		['email', email],
		['status', status]
	]) {
		if (v !== undefined && v !== '' && k !== undefined) {
			url.searchParams.append(k, v)
		}
	}
	const response = await fetch(url, {
		method: 'GET',
		headers: {
			Authorization: 'Bearer ' + auth.token
		},
		body: undefined
	})
	if (!response.ok) {
		const text = await response.text()
		throw new Error(`${response.status} ${text}`)
	}
	return await response.json()
}
Submitted by hugo697 360 days ago