0

Get available event targets to filter events

by
Published Oct 17, 2025

Get available event targets to filter events

Script qovery Verified

The script

Submitted by hugo697 Bun
Verified 235 days ago
1
//native
2
/**
3
 * Get available event targets to filter events
4
 * Get available event targets to filter events
5
 */
6
export async function main(
7
	auth: RT.Qovery,
8
	organizationId: string,
9
	fromTimestamp?: string | undefined,
10
	toTimestamp?: string | undefined,
11
	eventType?:
12
		| 'CREATE'
13
		| 'UPDATE'
14
		| 'DELETE'
15
		| 'ACCEPT'
16
		| 'EXPORT'
17
		| 'CLONE'
18
		| 'DEPLOY_QUEUED'
19
		| 'STOP_QUEUED'
20
		| 'RESTART_QUEUED'
21
		| 'DELETE_QUEUED'
22
		| 'UNINSTALL_QUEUED'
23
		| 'MAINTENANCE'
24
		| 'DRY_RUN'
25
		| 'TRIGGER_REDEPLOY'
26
		| 'TRIGGER_CANCEL'
27
		| 'FORCE_RUN_QUEUED'
28
		| 'FORCE_RUN_QUEUED_DEPLOY'
29
		| 'FORCE_RUN_QUEUED_STOP'
30
		| 'FORCE_RUN_QUEUED_DELETE'
31
		| 'TRIGGER_DEPLOY'
32
		| 'TRIGGER_STOP'
33
		| 'TRIGGER_RESTART'
34
		| 'TRIGGER_DELETE'
35
		| 'TRIGGER_UNINSTALL'
36
		| 'TRIGGER_DEPLOY_DRY_RUN'
37
		| 'TRIGGER_TERRAFORM_FORCE_UNLOCK'
38
		| 'TRIGGER_TERRAFORM_MIGRATE_STATE'
39
		| 'TRIGGER_FORCE_RUN'
40
		| 'TRIGGER_FORCE_RUN_DEPLOY'
41
		| 'TRIGGER_FORCE_RUN_STOP'
42
		| 'TRIGGER_FORCE_RUN_DELETE'
43
		| 'DEPLOYED'
44
		| 'STOPPED'
45
		| 'DELETED'
46
		| 'UNINSTALLED'
47
		| 'RESTARTED'
48
		| 'DEPLOYED_DRY_RUN'
49
		| 'FORCE_RUN_SUCCEEDED'
50
		| 'TERRAFORM_FORCE_UNLOCK_SUCCEEDED'
51
		| 'TERRAFORM_MIGRATE_STATE_SUCCEEDED'
52
		| 'DEPLOY_FAILED'
53
		| 'STOP_FAILED'
54
		| 'DELETE_FAILED'
55
		| 'UNINSTALL_FAILED'
56
		| 'RESTART_FAILED'
57
		| 'DEPLOYED_DRY_RUN_FAILED'
58
		| 'FORCE_RUN_FAILED'
59
		| 'TERRAFORM_FORCE_UNLOCK_FAILED'
60
		| 'TERRAFORM_MIGRATE_STATE_FAILED'
61
		| 'SHELL'
62
		| 'SSO'
63
		| 'PORT_FORWARD'
64
		| 'REMOTE_DEBUG'
65
		| 'IMPORT'
66
		| 'LOCK'
67
		| 'UNLOCK'
68
		| undefined,
69
	targetType?:
70
		| 'APPLICATION'
71
		| 'CLUSTER'
72
		| 'CONTAINER'
73
		| 'CONTAINER_REGISTRY'
74
		| 'DATABASE'
75
		| 'ENTERPRISE_CONNECTION'
76
		| 'ENVIRONMENT'
77
		| 'JOB'
78
		| 'HELM'
79
		| 'MEMBERS_AND_ROLES'
80
		| 'ORGANIZATION'
81
		| 'PROJECT'
82
		| 'WEBHOOK'
83
		| 'TERRAFORM'
84
		| undefined,
85
	triggeredBy?: string | undefined,
86
	origin?: 'API' | 'CLI' | 'CONSOLE' | 'GIT' | 'QOVERY_INTERNAL' | 'TERRAFORM_PROVIDER' | undefined,
87
	projectId?: string | undefined,
88
	environmentId?: string | undefined
89
) {
90
	const url = new URL(`https://api.qovery.com/organization/${organizationId}/targets`)
91
	for (const [k, v] of [
92
		['fromTimestamp', fromTimestamp],
93
		['toTimestamp', toTimestamp],
94
		['eventType', eventType],
95
		['targetType', targetType],
96
		['triggeredBy', triggeredBy],
97
		['origin', origin],
98
		['projectId', projectId],
99
		['environmentId', environmentId]
100
	]) {
101
		if (v !== undefined && v !== '') {
102
			url.searchParams.append(k, v)
103
		}
104
	}
105
	const response = await fetch(url, {
106
		method: 'GET',
107
		headers: {
108
			Authorization: 'Token ' + auth.apiKey
109
		},
110
		body: undefined
111
	})
112
	if (!response.ok) {
113
		const text = await response.text()
114
		throw new Error(`${response.status} ${text}`)
115
	}
116
	return await response.json()
117
}
118