export type FieldOptionsLongText = {rich_text?: boolean | undefined, generate_text_using_ai?: boolean | undefined, smart_mode?: boolean | undefined}; export type FieldOptionsPhoneNumber = {validate?: boolean | undefined}; export type FieldOptionsNumber = {abbreviate?: ('none' | 'auto' | 'thousand' | 'million' | 'billion' | 'trillion') | undefined, separator?: ('locale' | 'none_period' | 'none_comma' | 'comma_period' | 'period_comma' | 'space_period' | 'space_comma') | undefined}; export type FieldOptionsCurrency = {abbreviate?: ('none' | 'auto' | 'thousand' | 'million' | 'billion' | 'trillion') | undefined, currency_locale?: string | undefined, precision?: number | undefined, currency_code?: ('AED' | 'AFN' | 'ALL' | 'AMD' | 'ANG' | 'AOA' | 'ARS' | 'AUD' | 'AWG' | 'AZN' | 'BAM' | 'BBD' | 'BDT' | 'BGN' | 'BHD' | 'BIF' | 'BMD' | 'BND' | 'BOB' | 'BOV' | 'BRL' | 'BSD' | 'BTN' | 'BWP' | 'BYN' | 'BYR' | 'BZD' | 'CAD' | 'CDF' | 'CHE' | 'CHF' | 'CHW' | 'CLF' | 'CLP' | 'CNY' | 'COP' | 'COU' | 'CRC' | 'CUC' | 'CUP' | 'CVE' | 'CYP' | 'CZK' | 'DJF' | 'DKK' | 'DOP' | 'DZD' | 'EEK' | 'EGP' | 'ERN' | 'ETB' | 'EUR' | 'FJD' | 'FKP' | 'GBP' | 'GEL' | 'GHC' | 'GHS' | 'GIP' | 'GMD' | 'GNF' | 'GTQ' | 'GYD' | 'HKD' | 'HNL' | 'HRK' | 'HTG' | 'HUF' | 'IDR' | 'ILS' | 'INR' | 'IQD' | 'IRR' | 'ISK' | 'JMD' | 'JOD' | 'JPY' | 'KES' | 'KGS' | 'KHR' | 'KMF' | 'KPW' | 'KRW' | 'KWD' | 'KYD' | 'KZT' | 'LAK' | 'LBP' | 'LKR' | 'LRD' | 'LSL' | 'LTL' | 'LVL' | 'LYD' | 'MAD' | 'MDL' | 'MGA' | 'MKD' | 'MMK' | 'MNT' | 'MOP' | 'MRO' | 'MRU' | 'MTL' | 'MUR' | 'MVR' | 'MWK' | 'MXN' | 'MXV' | 'MYR' | 'MZN' | 'NAD' | 'NGN' | 'NIO' | 'NOK' | 'NPR' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PGK' | 'PHP' | 'PKR' | 'PLN' | 'PYG' | 'QAR' | 'ROL' | 'RON' | 'RSD' | 'RUB' | 'RWF' | 'SAR' | 'SBD' | 'SCR' | 'SDD' | 'SDG' | 'SEK' | 'SGD' | 'SHP' | 'SIT' | 'SKK' | 'SLE' | 'SLL' | 'SOS' | 'SRD' | 'SSP' | 'STD' | 'STN' | 'SVC' | 'SYP' | 'SZL' | 'THB' | 'TJS' | 'TMM' | 'TMT' | 'TND' | 'TOP' | 'TRY' | 'TTD' | 'TWD' | 'TZS' | 'UAH' | 'UGX' | 'USD' | 'USN' | 'USS' | 'UYI' | 'UYU' | 'UYW' | 'UZS' | 'VEB' | 'VED' | 'VES' | 'VND' | 'VUV' | 'WST' | 'XAF' | 'XAG' | 'XAU' | 'XBA' | 'XBB' | 'XBC' | 'XBD' | 'XCD' | 'XDR' | 'XFO' | 'XFU' | 'XOF' | 'XPD' | 'XPF' | 'XPT' | 'XSU' | 'XTS' | 'XUA' | 'XXX' | 'YER' | 'ZAR' | 'ZMK' | 'ZMW' | 'ZWD' | 'ZWG' | 'ZWL') | undefined}; export type FieldOptionsPercent = {show_as_progress?: boolean | undefined, shape?: ('bar' | 'circle') | undefined, precision?: number | undefined}; export type FieldOptionsDuration = {duration_format?: ('h:mm' | 'h:mm:ss' | 'h:mm:ss.s' | 'h:mm:ss.ss' | 'h:mm:ss.sss' | 'd h' | 'd h:mm' | 'd h:mm:ss' | 'd h m' | 'd h m s' | 'h:mm:ss.S' | 'h:mm:ss.SS' | 'h:mm:ss.SSS') | undefined}; export type FieldOptionsDateTime = {date_format?: string | undefined, time_format?: string | undefined, '12hr_format'?: boolean | undefined, display_timezone?: boolean | undefined, timezone?: string | undefined, use_same_timezone_for_all?: boolean | undefined}; export type FieldOptionsSelect = {choices?: (Array<{id?: string | undefined, title: string, color?: string | undefined}>) | undefined}; export type FieldOptionsCheckbox = {icon?: ('square' | 'circle-check' | 'circle-filled' | 'star' | 'heart' | 'thumbs-up' | 'flag') | undefined, color?: string | undefined}; export type FieldOptionsRating = {icon?: ('star' | 'heart' | 'circle-filled' | 'thumbs-up' | 'flag') | undefined, max_value?: number | undefined, color?: string | undefined}; export type FieldOptionsBarcode = {barcode_format?: string | undefined, barcode_value_field_id?: string | undefined}; export type FieldOptionsFormula = {formula?: string | undefined, display_type?: (string | null) | undefined, display_column_meta?: Record | undefined}; export type FieldOptionsUser = {allow_multiple_users?: boolean | undefined, notify?: boolean | undefined}; export type FieldOptionsLookup = {related_field_id: string, related_table_lookup_field_id: string, error?: string | undefined, enable_conditions?: boolean | undefined, lookup_limit?: (number | null) | undefined, lookup_limit_type?: ('first' | 'last') | undefined, use_recursive_evaluation?: boolean | undefined, display_type?: (string | null) | undefined, display_column_meta?: Record | undefined}; export type FieldOptionsLinks = {relation_type: 'om' | 'mo' | 'mm' | 'oo' | 'hm' | 'bt', related_table_id: string, related_base_id?: string | undefined, enable_conditions?: boolean | undefined}; export type FieldOptionsLinkToAnotherRecord = {relation_type: 'om' | 'mo' | 'mm' | 'oo' | 'hm' | 'bt', related_table_id: string, related_base_id?: string | undefined, enable_conditions?: boolean | undefined}; export type FieldOptionsRollup = {related_field_id: string, related_table_rollup_field_id: string, rollup_function: 'count' | 'countAll' | 'min' | 'max' | 'avg' | 'sum' | 'countDistinct' | 'sumDistinct' | 'avgDistinct' | 'formula', formula?: string | undefined, error?: string | undefined, precision?: number | undefined, display_type?: (string | null) | undefined, display_column_meta?: Record | undefined, enable_conditions?: boolean | undefined, separator?: ('locale' | 'none_period' | 'none_comma' | 'comma_period' | 'period_comma' | 'space_period' | 'space_comma') | undefined}; export type FieldOptionsButton = {type: 'formula', formula: string, label?: string | undefined, icon?: string | undefined, color?: ('brand' | 'red' | 'green' | 'maroon' | 'blue' | 'orange' | 'pink' | 'purple' | 'yellow' | 'gray') | undefined, theme?: ('solid' | 'light' | 'text') | undefined} | {type: 'webhook', webhook_id: string, button_hook_id?: string | undefined, label?: string | undefined, icon?: string | undefined, color?: ('brand' | 'red' | 'green' | 'maroon' | 'blue' | 'orange' | 'pink' | 'purple' | 'yellow' | 'gray') | undefined, theme?: ('solid' | 'light' | 'text') | undefined} | {type: 'ai', prompt: string, integration_id: string, theme?: ('solid' | 'light' | 'text') | undefined, output_column_ids?: string | undefined, label?: string | undefined, icon?: string | undefined, color?: ('brand' | 'red' | 'green' | 'maroon' | 'blue' | 'orange' | 'pink' | 'purple' | 'yellow' | 'gray') | undefined} | {type: 'script', script_id: string, label?: string | undefined, icon?: string | undefined, color?: ('brand' | 'red' | 'green' | 'maroon' | 'blue' | 'orange' | 'pink' | 'purple' | 'yellow' | 'gray') | undefined, theme?: ('solid' | 'light' | 'text') | undefined} | {type: 'url', formula: string, label?: string | undefined, icon?: string | undefined, color?: ('brand' | 'red' | 'green' | 'maroon' | 'blue' | 'orange' | 'pink' | 'purple' | 'yellow' | 'gray') | undefined, theme?: ('solid' | 'light' | 'text') | undefined}; export type FieldOptionsAttachment = {max_number_of_attachments?: number | undefined, max_attachment_size?: number | undefined, supported_attachment_mime_types?: Array | undefined}; export type FieldOptionsQrCode = {qrcode_value_field_id?: string | undefined}; export type FieldOptionsCreatedBy = {allow_multiple_users?: boolean | undefined, notify?: boolean | undefined}; export type FieldOptionsLastModifiedBy = {allow_multiple_users?: boolean | undefined, notify?: boolean | undefined}; export type FieldUpdate = {id?: string | undefined, title?: string | undefined, type?: 'LongText' | undefined, description?: (string | null) | undefined, default_value?: (string | boolean | number) | undefined, unique?: boolean | undefined, options?: FieldOptionsLongText | undefined} | {id?: string | undefined, title?: string | undefined, type?: ('PhoneNumber' | 'URL' | 'Email') | undefined, description?: (string | null) | undefined, default_value?: (string | boolean | number) | undefined, unique?: boolean | undefined, options?: FieldOptionsPhoneNumber | undefined} | {id?: string | undefined, title?: string | undefined, type?: ('Number' | 'Decimal') | undefined, description?: (string | null) | undefined, default_value?: (string | boolean | number) | undefined, unique?: boolean | undefined, options?: FieldOptionsNumber | undefined} | {id?: string | undefined, title?: string | undefined, type?: 'JSON' | undefined, description?: (string | null) | undefined, default_value?: (string | boolean | number) | undefined, unique?: boolean | undefined} | {id?: string | undefined, title?: string | undefined, type?: 'Currency' | undefined, description?: (string | null) | undefined, default_value?: (string | boolean | number) | undefined, unique?: boolean | undefined, options?: FieldOptionsCurrency | undefined} | {id?: string | undefined, title?: string | undefined, type?: 'Percent' | undefined, description?: (string | null) | undefined, default_value?: (string | boolean | number) | undefined, unique?: boolean | undefined, options?: FieldOptionsPercent | undefined} | {id?: string | undefined, title?: string | undefined, type?: 'Duration' | undefined, description?: (string | null) | undefined, default_value?: (string | boolean | number) | undefined, unique?: boolean | undefined, options?: FieldOptionsDuration | undefined} | {id?: string | undefined, title?: string | undefined, type?: ('Date' | 'DateTime' | 'Time') | undefined, description?: (string | null) | undefined, default_value?: (string | boolean | number) | undefined, unique?: boolean | undefined, options?: FieldOptionsDateTime | undefined} | {id?: string | undefined, title?: string | undefined, type?: ('SingleSelect' | 'MultiSelect') | undefined, description?: (string | null) | undefined, default_value?: (string | boolean | number) | undefined, unique?: boolean | undefined, options?: FieldOptionsSelect | undefined} | {id?: string | undefined, title?: string | undefined, type?: 'Checkbox' | undefined, description?: (string | null) | undefined, default_value?: (string | boolean | number) | undefined, unique?: boolean | undefined, options?: FieldOptionsCheckbox | undefined} | {id?: string | undefined, title?: string | undefined, type?: 'Rating' | undefined, description?: (string | null) | undefined, default_value?: (string | boolean | number) | undefined, unique?: boolean | undefined, options?: FieldOptionsRating | undefined} | {id?: string | undefined, title?: string | undefined, type?: 'Barcode' | undefined, description?: (string | null) | undefined, default_value?: (string | boolean | number) | undefined, unique?: boolean | undefined, options?: FieldOptionsBarcode | undefined} | {id?: string | undefined, title?: string | undefined, type?: 'Formula' | undefined, description?: (string | null) | undefined, default_value?: (string | boolean | number) | undefined, unique?: boolean | undefined, options?: FieldOptionsFormula | undefined} | {id?: string | undefined, title?: string | undefined, type?: 'User' | undefined, description?: (string | null) | undefined, default_value?: (string | boolean | number) | undefined, unique?: boolean | undefined, options?: FieldOptionsUser | undefined} | {id?: string | undefined, title?: string | undefined, type?: 'Lookup' | undefined, description?: (string | null) | undefined, default_value?: (string | boolean | number) | undefined, unique?: boolean | undefined, options?: FieldOptionsLookup | undefined} | {id?: string | undefined, title?: string | undefined, type?: 'Links' | undefined, description?: (string | null) | undefined, default_value?: (string | boolean | number) | undefined, unique?: boolean | undefined, options?: FieldOptionsLinks | undefined} | {id?: string | undefined, title?: string | undefined, type?: 'LinkToAnotherRecord' | undefined, description?: (string | null) | undefined, default_value?: (string | boolean | number) | undefined, unique?: boolean | undefined, options?: FieldOptionsLinkToAnotherRecord | undefined} | {id?: string | undefined, title?: string | undefined, type?: 'Rollup' | undefined, description?: (string | null) | undefined, default_value?: (string | boolean | number) | undefined, unique?: boolean | undefined, options?: FieldOptionsRollup | undefined} | {id?: string | undefined, title?: string | undefined, type?: 'Button' | undefined, description?: (string | null) | undefined, default_value?: (string | boolean | number) | undefined, unique?: boolean | undefined, options?: FieldOptionsButton | undefined} | {id?: string | undefined, title?: string | undefined, type?: 'Attachment' | undefined, description?: (string | null) | undefined, default_value?: (string | boolean | number) | undefined, unique?: boolean | undefined, options?: FieldOptionsAttachment | undefined} | {id?: string | undefined, title?: string | undefined, type?: 'QrCode' | undefined, description?: (string | null) | undefined, default_value?: (string | boolean | number) | undefined, unique?: boolean | undefined, options?: FieldOptionsQrCode | undefined} | {id?: string | undefined, title?: string | undefined, type?: ('CreatedTime' | 'LastModifiedTime') | undefined, description?: (string | null) | undefined, default_value?: (string | boolean | number) | undefined, unique?: boolean | undefined, options?: FieldOptionsDateTime | undefined} | {id?: string | undefined, title?: string | undefined, type?: 'CreatedBy' | undefined, description?: (string | null) | undefined, default_value?: (string | boolean | number) | undefined, unique?: boolean | undefined, options?: FieldOptionsCreatedBy | undefined} | {id?: string | undefined, title?: string | undefined, type?: 'LastModifiedBy' | undefined, description?: (string | null) | undefined, default_value?: (string | boolean | number) | undefined, unique?: boolean | undefined, options?: FieldOptionsLastModifiedBy | undefined} | {id?: string | undefined, title?: string | undefined, type?: ('Geometry' | 'Year' | 'AutoNumber') | undefined, description?: (string | null) | undefined, default_value?: (string | boolean | number) | undefined, unique?: boolean | undefined}; export type PatchApiApiV3MetaBasesBaseIdFieldsFieldIdArgs = {baseId: string, fieldId: string, body: FieldUpdate}; export type PatchApiApiV3MetaBasesBaseIdFieldsFieldIdOptions = {baseUrl?: string | undefined, xcToken?: string | undefined, fetch?: typeof fetch | undefined}; /** * Update field * * PATCH /api/v3/meta/bases/{baseId}/fields/{fieldId} * * Also accepts auth: bearerAuth */ export const patchApiApiV3MetaBasesBaseIdFieldsFieldId = async (args: PatchApiApiV3MetaBasesBaseIdFieldsFieldIdArgs, options?: PatchApiApiV3MetaBasesBaseIdFieldsFieldIdOptions) => { const {baseUrl = "https://app.nocodb.com", fetch: fetchFn = fetch, xcToken} = options ?? {} const query = new URLSearchParams() const headers = new Headers() headers.set('content-type', "application/json") if (xcToken !== undefined) headers.set("xc-token", xcToken) const url = `${baseUrl.replace(/\/+$/, '')}/api/v3/meta/bases/${encodeURIComponent(String(args.baseId))}/fields/${encodeURIComponent(String(args.fieldId))}${query.size > 0 ? `?${query}` : ''}` const res = await fetchFn(url, {method: "PATCH", 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 };