//native
type Shutterstock = {
token: string;
};
/**
* Get details about videos
* This endpoint shows information about a video, including URLs to previews and the sizes that it is available in.
*/
export async function main(
auth: Shutterstock,
id: string,
language:
| "ar"
| "bg"
| "bn"
| "cs"
| "da"
| "de"
| "el"
| "en"
| "es"
| "fi"
| "fr"
| "gu"
| "he"
| "hi"
| "hr"
| "hu"
| "id"
| "it"
| "ja"
| "kn"
| "ko"
| "ml"
| "mr"
| "nb"
| "nl"
| "or"
| "pl"
| "pt"
| "ro"
| "ru"
| "sk"
| "sl"
| "sv"
| "ta"
| "te"
| "th"
| "tr"
| "uk"
| "ur"
| "vi"
| "zh"
| "zh-Hant"
| undefined,
view: "minimal" | "full" | undefined,
search_id: string | undefined,
) {
const url = new URL(`https://api.shutterstock.com/v2/videos/${id}`);
for (const [k, v] of [
["language", language],
["view", view],
["search_id", search_id],
]) {
if (v !== undefined && v !== "" && k !== undefined) {
url.searchParams.append(k, v);
}
}
const response = await fetch(url, {
method: "GET",
headers: {
Authorization: "Bearer " + auth.token,
},
body: undefined,
});
if (!response.ok) {
const text = await response.text();
throw new Error(`${response.status} ${text}`);
}
return await response.json();
}
Submitted by hugo697 235 days ago