export type CreateApiRingGroupsIdArgs = {id: string, body: {name?: string | undefined, ring_time?: number | undefined, ring_strategy?: ('RING_SIMULTANEOUSLY' | 'PRIORITIZED_HUNT' | 'CYCLIC_HUNT' | 'LEAST_WORKED_HUNT' | 'PAGING_INTERCOM' | 'SKILL_BASED_ROUTING_PRIORITIZED_HUNT' | 'SKILL_BASED_ROUTING_CYCLIC_HUNT' | 'SKILL_BASED_ROUTING_LEAST_WORKED_HUNT') | undefined, skip_busy_member?: boolean | undefined, enable_paid?: boolean | undefined, enable_prid?: boolean | undefined, extension_number_as_to_header?: boolean | undefined, no_answer_forward_rule?: ({action?: ('FORWARD_TO_NUMBER' | 'FORWARD_TO_VOICEMAIL' | 'REPEAT' | 'HANGUP') | undefined, number?: string | undefined}) | undefined, outbound_caller_ids?: (Array<{provider_id?: string | undefined, caller_id?: string | undefined, description?: string | undefined}>) | undefined}}; export type CreateApiRingGroupsIdOptions = {baseUrl?: string | undefined, bearer?: string | undefined, fetch?: typeof fetch | undefined}; /** * Update a ring group * * POST /ring_groups/{id} */ export const createApiRingGroupsId = async (args: CreateApiRingGroupsIdArgs, options?: CreateApiRingGroupsIdOptions) => { const {baseUrl = "https://HOSTNAME:8887/api", fetch: fetchFn = fetch, bearer} = options ?? {} const query = new URLSearchParams() const headers = new Headers() headers.set('content-type', "application/json") if (bearer !== undefined) headers.set('authorization', `Bearer ${bearer}`) const url = `${baseUrl.replace(/\/+$/, '')}/ring_groups/${encodeURIComponent(String(args.id))}${query.size > 0 ? `?${query}` : ''}` const res = await fetchFn(url, {method: "POST", 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 };