//native
type Motimate = {
token: string
}
export async function main(
auth: Motimate,
include: string | undefined,
filter_assigned_to_all_: string | undefined,
filter_id_: string | undefined,
filter_external_id_: string | undefined,
filter_has_diploma_: string | undefined,
filter_category_id_: string | undefined,
filter_category_external_id_: string | undefined,
filter_folder_id_: string | undefined,
filter_publish_status_: string | undefined,
filter_default_language_: string | undefined,
filter_tags_: string | undefined,
filter_created_at_lteq_: string | undefined,
filter_updated_at_lteq_: string | undefined
) {
const url = new URL(`https://motimateapp.com/public_api/learning_paths`)
for (const [k, v] of [
['include', include],
['filter[assigned_to_all]', filter_assigned_to_all_],
['filter[id]', filter_id_],
['filter[external_id]', filter_external_id_],
['filter[has_diploma]', filter_has_diploma_],
['filter[category_id]', filter_category_id_],
['filter[category_external_id]', filter_category_external_id_],
['filter[folder_id]', filter_folder_id_],
['filter[publish_status]', filter_publish_status_],
['filter[default_language]', filter_default_language_],
['filter[tags]', filter_tags_],
['filter[created_at_lteq]', filter_created_at_lteq_],
['filter[updated_at_lteq]', filter_updated_at_lteq_]
]) {
if (v !== undefined && v !== '' && k !== undefined) {
url.searchParams.append(k, v)
}
}
const response = await fetch(url, {
method: 'GET',
headers: {
Authorization: 'Bearer ' + auth.token
}
})
if (!response.ok) {
const text = await response.text()
throw new Error(`${response.status} ${text}`)
}
return await response.json()
}
Submitted by hugo697 581 days ago