0

Get saved filters

by
Published Nov 5, 2024

List all the project's saved filters (each filter's name, ID and filter value)

Script botify Verified

The script

Submitted by hugo697 Bun
Verified 586 days ago
1
//native
2
type Botify = {
3
	token: string
4
}
5
/**
6
 * Get saved filters
7
 * List all the project's saved filters (each filter's name, ID and filter value)
8
 */
9
export async function main(
10
	auth: Botify,
11
	username: string,
12
	project_slug: string,
13
	page: string | undefined,
14
	size: string | undefined,
15
	search: string | undefined
16
) {
17
	const url = new URL(`https://api.botify.com/projects/${username}/${project_slug}/filters`)
18
	for (const [k, v] of [
19
		['page', page],
20
		['size', size],
21
		['search', search]
22
	]) {
23
		if (v !== undefined && v !== '' && k !== undefined) {
24
			url.searchParams.append(k, v)
25
		}
26
	}
27
	const response = await fetch(url, {
28
		method: 'GET',
29
		headers: {
30
			Authorization: 'Token ' + auth.token
31
		},
32
		body: undefined
33
	})
34
	if (!response.ok) {
35
		const text = await response.text()
36
		throw new Error(`${response.status} ${text}`)
37
	}
38
	return await response.text()
39
}
40