//native
type Adhook = {
	token: string
}
export async function main(
	auth: Adhook,
	mode:
		| 'CAMPAIGN'
		| 'POST'
		| 'CAMPAIGN_GENERATION'
		| 'POST_GENERATION'
		| 'POST_TEMPLATE'
		| 'AD_TEMPLATE'
		| 'MANAGE'
		| 'REVIEW'
		| 'MODERATION'
		| 'DEFAULT'
		| undefined,
	q: string | undefined,
	skip: string | undefined,
	limit: string | undefined,
	adhookToken: string,
	Origin: string
) {
	const url = new URL(`https://app.adhook.io/v1/subtenants/read/browse`)
	for (const [k, v] of [
		['mode', mode],
		['q', q],
		['skip', skip],
		['limit', limit]
	]) {
		if (v !== undefined && v !== '' && k !== undefined) {
			url.searchParams.append(k, v)
		}
	}
	const response = await fetch(url, {
		method: 'GET',
		headers: {
			adhookToken: adhookToken,
			Authorization: `Bearer ${auth.token}`,
			Origin: Origin
		},
		body: undefined
	})
	if (!response.ok) {
		const text = await response.text()
		throw new Error(`${response.status} ${text}`)
	}
	return await response.json()
}
 Submitted by hugo697 319 days ago