0
Get posts excel export
One script reply has been approved by the moderators Verified
Created by hugo697 223 days ago Viewed 13485 times
0
Submitted by hugo697 Bun
Verified 223 days ago
1
//native
2
type Adhook = {
3
	token: string
4
}
5

6
export async function main(
7
	auth: Adhook,
8
	accessToken: string | undefined,
9
	filter: string | undefined,
10
	start: string | undefined,
11
	end: string | undefined,
12
	subtenantId: string | undefined,
13
	groupId: string | undefined,
14
	tagIds: string | undefined,
15
	topicIds: string | undefined,
16
	channels: string | undefined,
17
	postStatus:
18
		| 'ALL'
19
		| 'DRAFT'
20
		| 'PLANNED'
21
		| 'PUBLISHED'
22
		| 'IN_REVIEW'
23
		| 'MANUALLY_ACTIVATING'
24
		| 'TRANSLATION_IN_PROGRESS'
25
		| 'TRANSLATION_COMPLETED'
26
		| 'NON_PUBLISHED'
27
		| undefined,
28
	orderKey: string | undefined,
29
	reverseOrder: string | undefined,
30
	Origin: string
31
) {
32
	const url = new URL(`https://app.adhook.io/v1/posts/export/xlsx`)
33

34
	for (const [k, v] of [
35
		['accessToken', accessToken],
36
		['filter', filter],
37
		['start', start],
38
		['end', end],
39
		['subtenantId', subtenantId],
40
		['groupId', groupId],
41
		['tagIds', tagIds],
42
		['topicIds', topicIds],
43
		['channels', channels],
44
		['postStatus', postStatus],
45
		['orderKey', orderKey],
46
		['reverseOrder', reverseOrder]
47
	]) {
48
		if (v !== undefined && v !== '' && k !== undefined) {
49
			url.searchParams.append(k, v)
50
		}
51
	}
52

53
	const response = await fetch(url, {
54
		method: 'GET',
55
		headers: {
56
			Authorization: `Bearer ${auth.token}`,
57
			Origin: Origin
58
		},
59
		body: undefined
60
	})
61

62
	if (!response.ok) {
63
		const text = await response.text()
64
		throw new Error(`${response.status} ${text}`)
65
	}
66

67
	return await response.text()
68
}
69