export type ApprovalBySchema = {change_date?: string | undefined, external?: string | undefined, object_id?: string | undefined, object_type?: string | undefined, status?: ('N/A' | 'REQUESTED' | 'APPROVED' | 'NOT_APPROVED' | 'MIXED') | undefined, user?: string | undefined, version_id?: string | undefined}; export type User = {email?: string | undefined, first_name?: string | undefined, id?: string | undefined, last_name?: string | undefined, photo?: string | undefined, photo_big?: string | undefined, photo_small?: string | undefined}; export type ApprovalSchema = {approvals_by?: (Array | null) | undefined, change_date?: string | undefined, externals?: Array | undefined, groups?: Array | undefined, min_number?: number | undefined, object_id?: string | undefined, object_type?: string | undefined, request_date?: string | undefined, requested_by?: string | undefined, share_id?: (string | null) | undefined, status?: ('N/A' | 'REQUESTED' | 'APPROVED' | 'NOT_APPROVED' | 'MIXED') | undefined, user_status?: ('N/A' | 'REQUESTED' | 'APPROVED' | 'NOT_APPROVED' | 'MIXED' | null) | undefined, users?: Array | undefined, users_info?: Array | undefined, version_id?: string | undefined}; export type RelationElastic = {date_created?: string | undefined, date_modified?: string | undefined, description?: string | undefined, related_from_asset_id?: string | undefined, related_to_asset_id?: string | undefined, relation_type?: string | undefined}; export type AssetVersion = {analyze_status?: ('N/A' | 'REQUESTED' | 'IN_PROGRESS' | 'FAILED' | 'DONE') | undefined, archive_status?: ('NOT_ARCHIVED' | 'ARCHIVING' | 'FAILED_TO_ARCHIVE' | 'ARCHIVED') | undefined, created_by_user?: string | undefined, created_by_user_info?: User | undefined, date_created?: string | undefined, face_recognition_status?: ('N/A' | 'REQUESTED' | 'IN_PROGRESS' | 'FAILED' | 'DONE') | undefined, has_unconfirmed_persons?: boolean | undefined, id?: string | undefined, is_online?: boolean | undefined, person_ids?: Array | undefined, status?: ('ACTIVE' | 'IN_PROGRESS' | 'FAILED' | 'DELETING' | 'DELETED') | undefined, transcribe_status?: ('N/A' | 'REQUESTED' | 'IN_PROGRESS' | 'FAILED' | 'DONE') | undefined, transcribed_languages?: Array | undefined, version_number?: number | undefined}; export type AssetElasticSchema = {analyze_status?: ('N/A' | 'REQUESTED' | 'IN_PROGRESS' | 'FAILED' | 'DONE') | undefined, ancestor_collections?: Array | undefined, approval?: ApprovalSchema | undefined, archive_status?: ('NOT_ARCHIVED' | 'ARCHIVING' | 'FAILED_TO_ARCHIVE' | 'ARCHIVED') | undefined, category?: (string | null) | undefined, clip_id?: (number | null) | undefined, comments_count?: number | undefined, created_by_user?: string | undefined, created_by_user_info?: User | undefined, custom_keyframe?: (string | null) | undefined, custom_poster?: (string | null) | undefined, date_created?: string | undefined, date_deleted?: string | undefined, date_imported?: string | undefined, date_modified?: string | undefined, date_viewed?: string | undefined, deleted_by_user?: string | undefined, deleted_by_user_info?: User | undefined, duration_milliseconds?: number | undefined, external_id?: (string | null) | undefined, external_link?: (string | null) | undefined, face_recognition_status?: ('N/A' | 'REQUESTED' | 'IN_PROGRESS' | 'FAILED' | 'DONE') | undefined, favoured?: boolean | undefined, files?: Array> | undefined, formats?: Array> | undefined, has_unconfirmed_persons?: boolean | undefined, id?: string | undefined, in_collections?: Array | undefined, is_blocked?: boolean | undefined, is_online?: boolean | undefined, keyframes?: Array> | undefined, last_archive_restore_date?: string | undefined, limit_download_to_groups?: (Array | null) | undefined, media_type?: (string | null) | undefined, metadata?: Record | undefined, object_type?: string | undefined, original_asset_id?: string | undefined, original_segment_id?: string | undefined, original_version_id?: string | undefined, person_ids?: Array | undefined, position?: number | undefined, proxies?: Array> | undefined, relations?: Array | undefined, site_name?: (string | null) | undefined, status?: ('ACTIVE' | 'DELETED') | undefined, time_end_milliseconds?: number | undefined, time_start_milliseconds?: number | undefined, title: string, type?: ('ASSET' | 'SEQUENCE' | 'NLE_PROJECT' | 'PLACEHOLDER' | 'CUSTOM' | 'LINK' | 'SUBCLIP') | undefined, updated_by_user?: string | undefined, updated_by_user_info?: User | undefined, versions?: Array | undefined, versions_number?: number | undefined, warning?: (string | null) | undefined}; export type UpdateApiV1AssetsAssetIdSearchDocumentArgs = {'App-ID': string, 'Auth-Token': string, asset_id: string, body: AssetElasticSchema}; export type UpdateApiV1AssetsAssetIdSearchDocumentOptions = {baseUrl: string, fetch?: typeof fetch | undefined}; /** * Update metadata for asset * * PUT /v1/assets/{asset_id}/search_document/ */ export const updateApiV1AssetsAssetIdSearchDocument = async (args: UpdateApiV1AssetsAssetIdSearchDocumentArgs, options: UpdateApiV1AssetsAssetIdSearchDocumentOptions) => { const {baseUrl, fetch: fetchFn = fetch} = options ?? {} const query = new URLSearchParams() const headers = new Headers() headers.set('content-type', "application/json") if (args['App-ID'] != null) headers.set("App-ID", String(args['App-ID'])) if (args['Auth-Token'] != null) headers.set("Auth-Token", String(args['Auth-Token'])) const url = `${baseUrl.replace(/\/+$/, '')}/v1/assets/${encodeURIComponent(String(args.asset_id))}/search_document/${query.size > 0 ? `?${query}` : ''}` const res = await fetchFn(url, {method: "PUT", headers, body: JSON.stringify(args.body)}) if (!res.ok) throw new Error(`Request failed with status ${res.status}`, {cause: {status: res.status, body: await res.text()}}) return undefined };