1
//native
2
type Buttondown = {
3
token: string;
4
};
5
/**
6
* Retrieve Email History By Id
7
*
8
*/
9
export async function main(
10
auth: Buttondown,
11
id: string,
12
history_id: string,
13
expand: string | undefined,
14
) {
15
const url = new URL(
16
`https://api.buttondown.com/v1/emails/${id}/history/body/${history_id}`,
17
);
18
for (const [k, v] of [["expand", expand]]) {
19
if (v !== undefined && v !== "" && k !== undefined) {
20
url.searchParams.append(k, v);
21
}
22
23
const response = await fetch(url, {
24
method: "GET",
25
headers: {
26
Authorization: "Token " + auth.token,
27
},
28
body: undefined,
29
});
30
if (!response.ok) {
31
const text = await response.text();
32
throw new Error(`${response.status} ${text}`);
33
34
return await response.json();
35
36