export type PatchApiIntegrationsIdArgs = {id: number, body: {integration: {name?: string | undefined, enabled?: boolean | undefined, active_directory_group_id?: string | undefined, active_directory_tenant_id?: string | undefined, active_directory_user_email_property?: ('mail' | 'userPrincipalName') | undefined, group_id?: (number | null) | undefined, import_members_only?: boolean | undefined}} | {integration: {name?: string | undefined, enabled?: boolean | undefined, place_id?: number | undefined, api_key?: string | undefined}} | {integration: {name?: string | undefined, enabled?: boolean | undefined, url?: string | undefined, enabled_events?: (Array<'access_key.create' | 'access_key.destroy' | 'amenity.create' | 'amenity.destroy' | 'amenity.update' | 'apple_pass.destroy' | 'apple_pass_instance.destroy' | 'apple_pass_instance.resume' | 'apple_pass_instance.suspend' | 'beacon.update' | 'booking.cancel' | 'booking.create' | 'camera.create' | 'camera.destroy' | 'camera.import' | 'camera.rate_limited' | 'camera_snapshot_set.create' | 'camera.update' | 'card.activate_with_token' | 'card.activate' | 'card.assign' | 'card.create' | 'card.deactivate' | 'card.deassign' | 'card.destroy' | 'card.update' | 'communication_policy.update' | 'controller.assign' | 'controller.deassign' | 'controller_input.closed' | 'controller_input_connection.create' | 'controller_input_connection.destroy' | 'controller_input_connection.update' | 'controller_input.opened' | 'controller_input.tamper' | 'controller_input.triggered' | 'controller.reboot' | 'controller_relay_connection.create' | 'controller_relay_connection.destroy' | 'controller_relay_connection.update' | 'controller.tamper' | 'controller.update' | 'controller.wiegand_board_connect' | 'controller.wiegand_board_disconnect' | 'controller_wiegand_connection.create' | 'controller_wiegand_connection.destroy' | 'controller_wiegand_connection.excessive_pin_attempts' | 'controller_wiegand_connection.update' | 'csv_card_import.create' | 'csv_user_import.create' | 'custom_role.create' | 'custom_role.destroy' | 'custom_role.update' | 'elevator.create' | 'elevator.destroy' | 'elevator.permit' | 'elevator_stop.cancel_lockdown' | 'elevator_stop.create' | 'elevator_stop.destroy' | 'elevator_stop.lock_down' | 'elevator_stop.scheduled_permit_ended' | 'elevator_stop.scheduled_permit_started' | 'elevator_stop.update' | 'elevator.update' | 'event_retention_policy.create' | 'event_retention_policy.destroy' | 'event_retention_policy.update' | 'face_credential.create' | 'face_credential.destroy' | 'face_credential.enroll' | 'floor.create' | 'floor.destroy' | 'floor.update' | 'group.create' | 'group.destroy' | 'group_elevator_stop.create' | 'group_elevator_stop.destroy' | 'group_link.create' | 'group_link.destroy' | 'group_lock.create' | 'group_lock.destroy' | 'group_terminal.create' | 'group_terminal.destroy' | 'group.update' | 'group_zone.create' | 'group_zone.destroy' | 'guest.create' | 'guest.destroy' | 'incident.create' | 'incident_policy.create' | 'incident_policy.destroy' | 'incident_policy_subscription.create' | 'incident_policy_subscription.destroy' | 'incident_policy_subscription.update' | 'incident_policy.update' | 'incident.update' | 'integration.create' | 'integration.destroy' | 'integration.disable_due_to_error' | 'integration.update' | 'integration.warn_due_to_error' | 'intercom.answer_call' | 'intercom.assign' | 'intercom_assignment.create' | 'intercom_assignment.destroy' | 'intercom_completed_call.create' | 'intercom.deassign' | 'intercom.dismiss_call' | 'intercom.finish_call' | 'intercom.initiate_streaming' | 'intercom.miss_call' | 'intercom.timeout_call' | 'intercom.trigger_call' | 'intercom.update' | 'invite.create' | 'kiosk.assign' | 'kiosk.deassign' | 'kiosk_shortcut.create' | 'kiosk_shortcut.destroy' | 'kiosk.update' | 'lock.cancel_lockdown' | 'lock.closed' | 'lock.create' | 'lock.destroy' | 'lock.first_to_arrive' | 'lock.forced_open' | 'lock.held_open' | 'lock.last_to_leave' | 'lock.lock_down' | 'lock.locked' | 'lock.opened' | 'lock.scheduled_unlock_ended' | 'lock.scheduled_unlock_started' | 'lock.tailgate' | 'lock.unlock' | 'lock.update' | 'login.create' | 'login.destroy' | 'login.promote' | 'login.resolve' | 'marketplace_app_share.create' | 'marketplace_app_share.destroy' | 'marketplace_installation.create' | 'marketplace_installation.destroy' | 'marketplace_installation.update' | 'marketplace_shortcut.create' | 'marketplace_shortcut.destroy' | 'marketplace_shortcut.update' | 'member.create' | 'member.destroy' | 'member.update' | 'third_party_hf_uid_read_configuration.create' | 'third_party_hf_uid_read_configuration.destroy' | 'mifare_classic_data_block_configuration.create' | 'mifare_classic_data_block_configuration.destroy' | 'mifare_desfire_extra_application_configuration.create' | 'mifare_desfire_master_key_configuration.create' | 'mobile_cache_policy.update' | 'mobile_cache_policy.invalidate' | 'organization.accept_transfer' | 'organization.cancel_transfer' | 'organization.create' | 'organization.generate_next_certificate' | 'organization.reject_transfer' | 'organization.request_transfer' | 'organization.reset_scim_token' | 'organization.rotate_certificate' | 'organization.update' | 'place.cancel_lockdown' | 'place_card.create' | 'place_card.destroy' | 'place.create' | 'place.destroy' | 'place.lock_down' | 'place.occupancy_rate_limit_reach' | 'place.update' | 'reader.access' | 'reader.assign' | 'reader.deassign' | 'reader.reboot' | 'reader.reset_tamper' | 'reader.tamper' | 'reader.update' | 'report.create' | 'report.destroy' | 'report.download' | 'report.finish' | 'role_assignment.create' | 'role_assignment.destroy' | 'role_assignment.update' | 'schedule.create' | 'schedule.destroy' | 'schedule.update' | 'scheduled_report.create' | 'scheduled_report.destroy' | 'scheduled_report.update' | 'share.create' | 'share.destroy' | 'share.update' | 'subscription.update' | 'team.create' | 'team.destroy' | 'team_membership.create' | 'team_membership.destroy' | 'team.update' | 'terminal.create' | 'terminal.destroy' | 'terminal.trigger' | 'terminal.update' | 'user.activate_2fa' | 'user.create_backup_codes' | 'user.create_password' | 'user.create' | 'user.deactivate_2fa' | 'user.destroy' | 'user.show_confirmation' | 'user.update_password' | 'user.update' | 'visualization_page_reporter.create' | 'visualization_page_reporter.destroy' | 'visualization_page_share.create' | 'visualization_page_share.destroy' | 'wireless_lock.battery_warning' | 'wireless_lock.closed' | 'wireless_lock_connection.create' | 'wireless_lock_connection.destroy' | 'wireless_lock_connection.update' | 'wireless_lock.disenroll' | 'wireless_lock.locked' | 'wireless_lock.opened' | 'wireless_lock.tampered' | 'wireless_lock.unlocked' | 'wireless_lock.update' | 'zone.create' | 'zone.destroy' | 'zone.external_mode_override' | 'zone.override' | 'zone.policy_activate' | 'zone.policy_override' | 'zone.policy_transition' | 'zone.policy_violate' | 'zone.reset' | 'zone.update'>) | undefined, signature_key?: string | undefined}} | {integration: {name?: string | undefined, enabled?: boolean | undefined, jumpcloud_organization_id?: (string | null) | undefined, jumpcloud_group_id?: (string | null) | undefined, group_id?: (number | null) | undefined, import_members_only?: boolean | undefined, api_key?: string | undefined}}}; export type PatchApiIntegrationsIdOptions = {baseUrl?: string | undefined, KisiLogin?: string | undefined, fetch?: typeof fetch | undefined}; /** * Update integration * * PATCH /integrations/{id} * * Also accepts auth: OAuth2 */ export const patchApiIntegrationsId = async (args: PatchApiIntegrationsIdArgs, options?: PatchApiIntegrationsIdOptions) => { const {baseUrl = "https://api.kisi.io", fetch: fetchFn = fetch, KisiLogin} = options ?? {} const query = new URLSearchParams() const headers = new Headers() headers.set('content-type', "application/json") if (KisiLogin !== undefined) headers.set("Authorization", KisiLogin) const url = `${baseUrl.replace(/\/+$/, '')}/integrations/${encodeURIComponent(String(args.id))}${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 };