> ## Documentation Index
> Fetch the complete documentation index at: https://docs.attio.com/llms.txt
> Use this file to discover all available pages before exploring further.

# useWorkspaceSettingsForm()

> A hook for creating workspace settings forms inside your Attio app.

The `useWorkspaceSettingsForm()` hook creates a form for configuring workspace-level settings for your app. Unlike regular forms created with [`useForm()`](../forms/use-form), workspace settings forms automatically save changes and don't require an `onSubmit` handler.

<Note>
  Only workspace admins can edit workspace settings. However, all workspace members can view the
  settings.
</Note>

## Parameters

This hook takes no parameters. The schema is inferred globally based on your workspace settings configuration defined in [`app.settings.ts`](./app-settings-schema).

## Returns

an object containing:

### Components

The hook returns the following form components. Note that settings forms do not include a submit button, as changes are saved automatically.

#### Form Component

* [`<Form />`](../components/workspace-settings/form) - The form wrapper

#### Input Components

* [`<AttioUserCombobox />`](../components/workspace-settings/attio-user-combobox) - Select Attio workspace users
* [`<Checkbox />`](../components/workspace-settings/checkbox) - Boolean checkbox input
* [`<Combobox />`](../components/workspace-settings/combobox) - Dropdown selection input
* [`<InputGroup />`](../components/workspace-settings/input-group) - Group multiple inputs together
* [`<NumberInput />`](../components/workspace-settings/number-input) - Numeric input field
* [`<TextInput />`](../components/workspace-settings/text-input) - Text input field
* [`<Toggle />`](../components/workspace-settings/toggle) - Boolean toggle switch

#### Layout Components

* [`<Section />`](../components/workspace-settings/section) - Group form fields into sections

#### Utility Components

* [`<Button />`](../components/workspace-settings/button) - Action buttons for additional functionality
* [`<WithState />`](../components/workspace-settings/with-state) - Access form state for conditional rendering

## Example

```tsx workspace-settings.tsx theme={"system"}
import React from "react"
import {useWorkspaceSettingsForm} from "attio/client"
import type {App} from "attio"

export const workspaceSettings: App.Settings.Workspace = {
  Page,
}

function Page() {
  const {Form, TextInput, Toggle, NumberInput, Section} = useWorkspaceSettingsForm()

  return (
    <Form>
      <Section title="General Settings">
        <TextInput label="Display name" name="display_name" />
        <TextInput label="Environment" name="environment" />
      </Section>

      <Section title="Sync Configuration">
        <Toggle label="Enable automatic sync" name="auto_sync_enabled" />
        <NumberInput label="Sync interval (minutes)" name="sync_interval_minutes" />
      </Section>
    </Form>
  )
}
```
