0

Preview a contract agreement

by
Published Oct 17, 2025

Retrieve an IC and EOR contract agreement content in HTML. If no template is specified, the default or currently assigned template will be used. This endpoint does not support Global Payroll contract type. **Token scopes**: `contracts:read`

Script deel Verified

The script

Submitted by hugo697 Bun
Verified 235 days ago
1
//native
2
/**
3
 * Preview a contract agreement
4
 * Retrieve an IC and EOR contract agreement content in HTML. If no template is specified, the default or currently assigned template will be used. This endpoint does not support Global Payroll contract type.
5
 **Token scopes**: `contracts:read`
6
 */
7
export async function main(auth: RT.Deel, contract_id: string, templateId?: string | undefined) {
8
	const url = new URL(`https://api.letsdeel.com/rest/v2/contracts/${contract_id}/preview`)
9
	for (const [k, v] of [['templateId', templateId]]) {
10
		if (v !== undefined && v !== '') {
11
			url.searchParams.append(k, v)
12
		}
13
	}
14
	const response = await fetch(url, {
15
		method: 'GET',
16
		headers: {
17
			Authorization: 'Bearer ' + auth.apiKey
18
		},
19
		body: undefined
20
	})
21
	if (!response.ok) {
22
		const text = await response.text()
23
		throw new Error(`${response.status} ${text}`)
24
	}
25
	return await response.text()
26
}
27