1
//native
2
type Salesflare = {
3
apiKey: string;
4
};
5
/**
6
* List a custom field's options
7
*
8
*/
9
export async function main(
10
auth: Salesflare,
11
itemClass: string,
12
customFieldApiField: string,
13
searchString: string | undefined,
14
) {
15
const url = new URL(
16
`https://api.salesflare.com/customfields/${itemClass}/${customFieldApiField}/options`,
17
);
18
for (const [k, v] of [["searchString", searchString]]) {
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: "Bearer " + auth.apiKey,
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.text();
35
36