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

# Intuned.json

## Introduction

The `Intuned.json` file is the configuration file for your Intuned project. It defines various settings including workspace information, replication settings, auth sessions, API access, deployment options, runtime defaults, and IDE metadata. This file should be placed in the root directory of your project.

When you try to modify `Intuned.json` in the IDE, we will provide you with a UI that helps you modify the underlying JSON structure and describe what each property does. You can also switch to text mode to manually modify the JSON as you see fit. On the other hand, if you are working with locally using Intuned CLI to run and deploy your project, you will need to manually edit this file and ensure the JSON structure is valid.

The main difference between the CLI configuration and the IDE configuration is that the CLI configuration requires additional properties that are used when you want to deploy your project like `workspaceId` and `projectName` but these configuration properties are not needed when working in the IDE.

## Configuration Properties

<Tabs>
  <Tab title="CLI Configuration">
    <ParamField body="workspaceId" type="string" optional>
      Your Intuned workspace ID. If not provided here, it must be supplied via the `--workspace-id` flag during deployment.
    </ParamField>

    <ParamField body="projectName" type="string" optional>
      The name of your Intuned project. If not provided here, it must be supplied via the command line when deploying using `--project-name`.
    </ParamField>

    <ParamField body="replication" type="object" required>
      Replication settings that control how your project scales and what resources it uses.

      <Expandable>
        <ParamField body="maxConcurrentRequests" type="number" required>
          The maximum number of concurrent executions allowed via Intuned API. This does not affect jobs. A number of machines equal to this will be allocated to handle API requests. Not applicable if API access is disabled.

          **Default:** `1`
        </ParamField>

        <ParamField body="size" type="string" required>
          The machine size to use for this project. This is applicable for both API requests and jobs.

          **Options:**

          * `"standard"`: Standard machine size (6 shared vCPUs, 2GB RAM)
          * `"large"`: Large machine size (8 shared vCPUs, 4GB RAM)
          * `"x-large"`: Extra large machine size (1 performance vCPU, 8GB RAM)

          **Default:** `"standard"`
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="authSessions" type="object" optional>
      Auth session settings for managing authentication state across browser automation runs.

      <Expandable>
        <ParamField body="enabled" type="boolean" required>
          Whether auth sessions are enabled for this project. If enabled, `auth-sessions/check.ts` API must be implemented to validate the auth session.
        </ParamField>

        <ParamField body="type" type="string" required>
          The type of auth session to use.

          **Options:**

          * `"API"`: Requires implementing `auth-sessions/create.ts` API to create/recreate the auth session programmatically
          * `"MANUAL"`: Uses a recorder to manually create the auth session
        </ParamField>

        <ParamField body="startUrl" type="string" optional>
          Recorder start URL for the recorder to navigate to when creating the auth session. Required if `type` is `"MANUAL"`. Not used if `type` is `"API"`.
        </ParamField>

        <ParamField body="finishUrl" type="string" optional>
          Recorder finish URL for the recorder. Once this URL is reached, the recorder stops and saves the auth session. Required if `type` is `"MANUAL"`. Not used if `type` is `"API"`.
        </ParamField>

        <ParamField body="browserMode" type="string" optional>
          Recorder browser mode. Only applicable for `"MANUAL"` type.

          **Options:**

          * `"fullscreen"`: Launches the browser in fullscreen mode
          * `"kiosk"`: Launches the browser in kiosk mode (no address bar, no navigation controls)

          **Default:** `"fullscreen"`
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="apiAccess" type="object" optional>
      API access settings that control how your project can be consumed.

      <Expandable>
        <ParamField body="enabled" type="boolean" required>
          Whether to enable consumption through Intuned API. If this is false, the project can only be consumed through jobs. This is required for projects that use auth sessions.

          **Default:** `true`
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="metadata" type="object" optional>
      Metadata used by the IDE to prefill the Run playground.

      <Expandable>
        <ParamField body="defaultRunPlaygroundInput" type="object" optional>
          Default input used to prefill the Run playground in the IDE.

          <Expandable>
            <ParamField body="apiName" type="string" optional>
              The API name to preselect in the Run playground.
            </ParamField>

            <ParamField body="parameters" type="object" optional>
              Default parameters to prefill for the selected API.
            </ParamField>
          </Expandable>
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="headful" type="boolean" optional>
      Whether to run the deployed API in a headful browser.

      <Tip>
        Running in headful can help with some anti-bot detections. However, keep in mind that running in headful mode might increase resource usage , so keep in mind to choose appropriate machine size for you.
      </Tip>

      **Default:** `false`
    </ParamField>

    <ParamField body="browserSize" type="object" optional>
      Browser window size used when launching the browser.

      <Expandable>
        <ParamField body="width" type="number">
          Browser width in pixels.

          **Range:** `200` to `3840`

          **Default:** `1024`
        </ParamField>

        <ParamField body="height" type="number">
          Browser height in pixels.

          **Range:** `200` to `2160`

          **Default:** `800`
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="browser" type="string" optional>
      Browser engine to use for this project.

      **Options:**

      * `"chromium"`: Use Chromium
      * `"brave"`: Use Brave
    </ParamField>

    <ParamField body="integrations" type="object" optional>
      Project-level third-party integration settings.

      <Expandable>
        <ParamField body="1password" type="object" optional>
          1Password integration settings.

          <Expandable>
            <ParamField body="enabled" type="boolean">
              Whether the 1Password integration is enabled.
            </ParamField>

            <ParamField body="integrationName" type="string" optional>
              The configured 1Password integration name.
            </ParamField>

            <ParamField body="integrationVersion" type="string" optional>
              The configured 1Password integration version.
            </ParamField>
          </Expandable>
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="region" type="string" optional>
      The region where your Intuned project is hosted.

      **Available regions:**

      * `"us"`: United States
      * `"au"`: Australia
      * `"ca"`: Canada
      * `"nl"`: Netherlands
      * `"mx"`: Mexico
      * `"ro"`: Romania
      * `"se"`: Sweden
      * `"sg"`: Singapore
      * `"es"`: Spain
      * `"za"`: South Africa
      * `"de"`: Germany
      * `"in"`: India
      * `"hk"`: Hong Kong
      * `"jp"`: Japan
      * `"pl"`: Poland
      * `"fr"`: France
      * `"gb"`: United Kingdom

      **Default:** `"us"`
    </ParamField>

    <ParamField body="defaults" type="object" optional>
      Default values that Intuned applies when the same values are not provided at run time.

      <Tip>
        Use `dev` for local CLI or IDE runs and `deployed` for runs started on Intuned Platform.
      </Tip>

      <Expandable>
        <ParamField body="proxy" type="object" optional>
          Default proxy URL by environment.

          <Expandable>
            <ParamField body="dev" type="string" optional>
              Default proxy URL for local development runs.
            </ParamField>

            <ParamField body="deployed" type="string" optional>
              Default proxy URL for deployed runs.
            </ParamField>
          </Expandable>
        </ParamField>

        <ParamField body="saveTrace" type="object" optional>
          Default trace-saving behavior by environment.

          <Expandable>
            <ParamField body="dev" type="boolean" optional>
              Whether to save traces by default for local development runs.
            </ParamField>

            <ParamField body="deployed" type="boolean" optional>
              Whether to save traces by default for deployed runs.
            </ParamField>
          </Expandable>
        </ParamField>

        <ParamField body="requestTimeout" type="object" optional>
          Default request timeout, in seconds, by environment.

          <Expandable>
            <ParamField body="dev" type="number" optional>
              Default request timeout for local development runs.

              **Default run value:** `600`
            </ParamField>

            <ParamField body="deployed" type="number" optional>
              Default request timeout for deployed runs.

              **Default run value:** `600`
            </ParamField>
          </Expandable>
        </ParamField>

        <ParamField body="retry" type="object" optional>
          Default retry policy by environment.

          <Expandable>
            <ParamField body="dev" type="object" optional>
              Retry defaults for local development runs.

              <Expandable>
                <ParamField body="maximumAttempts" type="number" optional>
                  Maximum number of attempts before the run is marked as failed.

                  **Default run value:** `3`
                </ParamField>
              </Expandable>
            </ParamField>

            <ParamField body="deployed" type="object" optional>
              Retry defaults for deployed runs.

              <Expandable>
                <ParamField body="maximumAttempts" type="number" optional>
                  Maximum number of attempts before the run is marked as failed.

                  **Default run value:** `3`
                </ParamField>
              </Expandable>
            </ParamField>
          </Expandable>
        </ParamField>

        <ParamField body="sink" type="object" optional>
          Default sink configuration by environment.

          Each environment accepts the same sink object used by run inputs. Every sink supports `type` (`"webhook"` or `"s3"`), `skipOnFail` (boolean, required), and `apisToSend` (array of API names, optional). See [Webhook Sink](/client-apis/api-reference/sinks/webhook) and [AWS S3 Sink](/client-apis/api-reference/sinks/s3) for the type-specific fields.

          <Expandable>
            <ParamField body="dev" type="object" optional>
              Default sink configuration for local development runs.
            </ParamField>

            <ParamField body="deployed" type="object" optional>
              Default sink configuration for deployed runs.
            </ParamField>
          </Expandable>
        </ParamField>

        <ParamField body="authSession" type="object" optional>
          Default auth session runtime settings by environment.

          <Expandable>
            <ParamField body="dev" type="object" optional>
              Default auth session settings for local development runs.

              <Expandable>
                <ParamField body="autoRecreate" type="boolean" optional>
                  Automatically recreate auth sessions when validation fails.
                </ParamField>

                <ParamField body="createAttempts" type="number" optional>
                  Number of attempts for auth session creation.
                </ParamField>

                <ParamField body="checkAttempts" type="number" optional>
                  Number of attempts for auth session validation checks.
                </ParamField>

                <ParamField body="proxy" type="string" optional>
                  Proxy URL for auth session operations. Set to `null` to explicitly disable.
                </ParamField>
              </Expandable>
            </ParamField>

            <ParamField body="deployed" type="object" optional>
              Default auth session settings for deployed runs.

              <Expandable>
                <ParamField body="autoRecreate" type="boolean" optional>
                  Automatically recreate auth sessions when validation fails.
                </ParamField>

                <ParamField body="createAttempts" type="number" optional>
                  Number of attempts for auth session creation.
                </ParamField>

                <ParamField body="checkAttempts" type="number" optional>
                  Number of attempts for auth session validation checks.
                </ParamField>

                <ParamField body="proxy" type="string" optional>
                  Proxy URL for auth session operations. Set to `null` to explicitly disable.
                </ParamField>
              </Expandable>
            </ParamField>
          </Expandable>
        </ParamField>
      </Expandable>
    </ParamField>
  </Tab>

  <Tab title="IDE Configuration">
    <ParamField body="replication" type="object" required>
      Replication settings that control how your project scales and what resources it uses.

      <Expandable>
        <ParamField body="maxConcurrentRequests" type="number" required>
          The maximum number of concurrent executions allowed via Intuned API. This does not affect jobs. A number of machines equal to this will be allocated to handle API requests. Not applicable if API access is disabled.

          **Default:** `1`
        </ParamField>

        <ParamField body="size" type="string" required>
          The machine size to use for this project. This is applicable for both API requests and jobs.

          **Options:**

          * `"standard"`: Standard machine size (6 shared vCPUs, 2GB RAM)
          * `"large"`: Large machine size (8 shared vCPUs, 4GB RAM)
          * `"x-large"`: Extra large machine size (1 performance vCPU, 8GB RAM)

          **Default:** `"standard"`
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="authSessions" type="object" optional>
      Auth session settings for managing authentication state across browser automation runs.

      <Expandable>
        <ParamField body="enabled" type="boolean" required>
          Whether auth sessions are enabled for this project. If enabled, `auth-sessions/check.ts` API must be implemented to validate the auth session.
        </ParamField>

        <ParamField body="type" type="string" required>
          The type of auth session to use.

          **Options:**

          * `"API"`: Requires implementing `auth-sessions/create.ts` API to create/recreate the auth session programmatically
          * `"MANUAL"`: Uses a recorder to manually create the auth session
        </ParamField>

        <ParamField body="startUrl" type="string" optional>
          Recorder start URL for the recorder to navigate to when creating the auth session. Required if `type` is `"MANUAL"`. Not used if `type` is `"API"`.
        </ParamField>

        <ParamField body="finishUrl" type="string" optional>
          Recorder finish URL for the recorder. Once this URL is reached, the recorder stops and saves the auth session. Required if `type` is `"MANUAL"`. Not used if `type` is `"API"`.
        </ParamField>

        <ParamField body="browserMode" type="string" optional>
          Recorder browser mode. Only applicable for `"MANUAL"` type.

          **Options:**

          * `"fullscreen"`: Launches the browser in fullscreen mode
          * `"kiosk"`: Launches the browser in kiosk mode (no address bar, no navigation controls)

          **Default:** `"fullscreen"`
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="apiAccess" type="object" optional>
      API access settings that control how your project can be consumed.

      <Expandable>
        <ParamField body="enabled" type="boolean" required>
          Whether to enable consumption through Intuned API. If this is false, the project can only be consumed through jobs. This is required for projects that use auth sessions.

          **Default:** `true`
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="metadata" type="object" optional>
      Metadata used by the IDE to prefill the Run playground.

      <Expandable>
        <ParamField body="defaultRunPlaygroundInput" type="object" optional>
          Default input used to prefill the Run playground in the IDE.

          <Expandable>
            <ParamField body="apiName" type="string" optional>
              The API name to preselect in the Run playground.
            </ParamField>

            <ParamField body="parameters" type="object" optional>
              Default parameters to prefill for the selected API.
            </ParamField>
          </Expandable>
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="headful" type="boolean" optional>
      Whether to run the deployed API in a headful browser.

      <Tip>
        Running in headful can help with some anti-bot detections. However, keep in mind that running in headful mode might increase resource usage , so keep in mind to choose appropriate machine size for you.
      </Tip>

      **Default:** `false`
    </ParamField>

    <ParamField body="browserSize" type="object" optional>
      Browser window size used when launching the browser.

      <Expandable>
        <ParamField body="width" type="number">
          Browser width in pixels.

          **Range:** `200` to `3840`

          **Default:** `1024`
        </ParamField>

        <ParamField body="height" type="number">
          Browser height in pixels.

          **Range:** `200` to `2160`

          **Default:** `800`
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="browser" type="string" optional>
      Browser engine to use for this project.

      **Options:**

      * `"chromium"`: Use Chromium
      * `"brave"`: Use Brave
    </ParamField>

    <ParamField body="integrations" type="object" optional>
      Project-level third-party integration settings.

      <Expandable>
        <ParamField body="1password" type="object" optional>
          1Password integration settings.

          <Expandable>
            <ParamField body="enabled" type="boolean">
              Whether the 1Password integration is enabled.
            </ParamField>

            <ParamField body="integrationName" type="string" optional>
              The configured 1Password integration name.
            </ParamField>

            <ParamField body="integrationVersion" type="string" optional>
              The configured 1Password integration version.
            </ParamField>
          </Expandable>
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="region" type="string" optional>
      The region where your Intuned project is hosted.

      **Available regions:**

      * `"us"`: United States
      * `"au"`: Australia
      * `"ca"`: Canada
      * `"nl"`: Netherlands
      * `"mx"`: Mexico
      * `"ro"`: Romania
      * `"se"`: Sweden
      * `"sg"`: Singapore
      * `"es"`: Spain
      * `"za"`: South Africa
      * `"de"`: Germany
      * `"in"`: India
      * `"hk"`: Hong Kong
      * `"jp"`: Japan
      * `"pl"`: Poland
      * `"fr"`: France
      * `"gb"`: United Kingdom

      **Default:** `"us"`
    </ParamField>

    <ParamField body="defaults" type="object" optional>
      Default values that Intuned applies when the same values are not provided at run time.

      <Tip>
        Use `dev` for local CLI or IDE runs and `deployed` for runs started on Intuned Platform.
      </Tip>

      <Expandable>
        <ParamField body="proxy" type="object" optional>
          Default proxy URL by environment.

          <Expandable>
            <ParamField body="dev" type="string" optional>
              Default proxy URL for local development runs.
            </ParamField>

            <ParamField body="deployed" type="string" optional>
              Default proxy URL for deployed runs.
            </ParamField>
          </Expandable>
        </ParamField>

        <ParamField body="saveTrace" type="object" optional>
          Default trace-saving behavior by environment.

          <Expandable>
            <ParamField body="dev" type="boolean" optional>
              Whether to save traces by default for local development runs.
            </ParamField>

            <ParamField body="deployed" type="boolean" optional>
              Whether to save traces by default for deployed runs.
            </ParamField>
          </Expandable>
        </ParamField>

        <ParamField body="requestTimeout" type="object" optional>
          Default request timeout, in seconds, by environment.

          <Expandable>
            <ParamField body="dev" type="number" optional>
              Default request timeout for local development runs.

              **Default run value:** `600`
            </ParamField>

            <ParamField body="deployed" type="number" optional>
              Default request timeout for deployed runs.

              **Default run value:** `600`
            </ParamField>
          </Expandable>
        </ParamField>

        <ParamField body="retry" type="object" optional>
          Default retry policy by environment.

          <Expandable>
            <ParamField body="dev" type="object" optional>
              Retry defaults for local development runs.

              <Expandable>
                <ParamField body="maximumAttempts" type="number" optional>
                  Maximum number of attempts before the run is marked as failed.

                  **Default run value:** `3`
                </ParamField>
              </Expandable>
            </ParamField>

            <ParamField body="deployed" type="object" optional>
              Retry defaults for deployed runs.

              <Expandable>
                <ParamField body="maximumAttempts" type="number" optional>
                  Maximum number of attempts before the run is marked as failed.

                  **Default run value:** `3`
                </ParamField>
              </Expandable>
            </ParamField>
          </Expandable>
        </ParamField>

        <ParamField body="sink" type="object" optional>
          Default sink configuration by environment.

          Each environment accepts the same sink object used by run inputs. Every sink supports `type` (`"webhook"` or `"s3"`), `skipOnFail` (boolean, required), and `apisToSend` (array of API names, optional). See [Webhook Sink](/client-apis/api-reference/sinks/webhook) and [AWS S3 Sink](/client-apis/api-reference/sinks/s3) for the type-specific fields.

          <Expandable>
            <ParamField body="dev" type="object" optional>
              Default sink configuration for local development runs.
            </ParamField>

            <ParamField body="deployed" type="object" optional>
              Default sink configuration for deployed runs.
            </ParamField>
          </Expandable>
        </ParamField>

        <ParamField body="authSession" type="object" optional>
          Default auth session runtime settings by environment.

          <Expandable>
            <ParamField body="dev" type="object" optional>
              Default auth session settings for local development runs.

              <Expandable>
                <ParamField body="autoRecreate" type="boolean" optional>
                  Automatically recreate auth sessions when validation fails.
                </ParamField>

                <ParamField body="createAttempts" type="number" optional>
                  Number of attempts for auth session creation.
                </ParamField>

                <ParamField body="checkAttempts" type="number" optional>
                  Number of attempts for auth session validation checks.
                </ParamField>

                <ParamField body="proxy" type="string" optional>
                  Proxy URL for auth session operations. Set to `null` to explicitly disable.
                </ParamField>
              </Expandable>
            </ParamField>

            <ParamField body="deployed" type="object" optional>
              Default auth session settings for deployed runs.

              <Expandable>
                <ParamField body="autoRecreate" type="boolean" optional>
                  Automatically recreate auth sessions when validation fails.
                </ParamField>

                <ParamField body="createAttempts" type="number" optional>
                  Number of attempts for auth session creation.
                </ParamField>

                <ParamField body="checkAttempts" type="number" optional>
                  Number of attempts for auth session validation checks.
                </ParamField>

                <ParamField body="proxy" type="string" optional>
                  Proxy URL for auth session operations. Set to `null` to explicitly disable.
                </ParamField>
              </Expandable>
            </ParamField>
          </Expandable>
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="stealthMode" type="object" optional>
      Stealth mode settings that control whether requests run in stealth mode.

      <Expandable>
        <ParamField body="enabled" type="boolean" optional>
          Whether to enable stealth mode for this project.

          <Warning>
            Stealth mode currently only works on Intuned Platform deployments and is not applied during local development via the CLI.
          </Warning>

          <Tip>
            Upgrade to the latest Playwright version for best stealth mode compatibility. See [Playwright and browser support](/main/05-references/playwright-browsers-support) for supported versions.
          </Tip>

          **Default:** `false`
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="captchaSolver" type="object" optional>
      CAPTCHA solving settings that control automatic CAPTCHA detection and solving.

      <Warning>
        * CAPTCHA solving requires headful mode to be enabled.
        * it's recommended to also have stealth mode enabled and a proxy attached to the run for the best results.
        * This feature only works on the Intuned Platform and is not available during
          local CLI development.
      </Warning>

      <Tip>
        The CAPTCHA solving extension works better with newer Playwright versions. Upgrade to the latest supported version for improved solve rates. See [Playwright and browser support](/main/05-references/playwright-browsers-support).
      </Tip>

      <Expandable>
        <ParamField body="enabled" type="boolean" optional>
          Enable the CAPTCHA solver for this project.

          **Default:** `false`
        </ParamField>

        <ParamField body="cloudflare" type="object" optional>
          Configuration for Cloudflare challenge solving, including Turnstile and interstitial checks.

          <Expandable>
            <ParamField body="enabled" type="boolean" optional>
              Enable automatic Cloudflare CAPTCHA solving.

              **Default:** `false`
            </ParamField>
          </Expandable>
        </ParamField>

        <ParamField body="googleRecaptcha" type="object" optional>
          Configuration for Google reCAPTCHA solving (checkbox and invisible variants).

          <Expandable>
            <ParamField body="enabled" type="boolean" optional>
              Enable automatic Google reCAPTCHA solving.

              **Default:** `false`
            </ParamField>
          </Expandable>
        </ParamField>

        <ParamField body="awscaptcha" type="object" optional>
          Configuration for AWS CAPTCHA (Amazon's bot control service) solving.

          <Expandable>
            <ParamField body="enabled" type="boolean" optional>
              Enable automatic AWS CAPTCHA solving.

              **Default:** `false`
            </ParamField>
          </Expandable>
        </ParamField>

        <ParamField body="geetest" type="object" optional>
          Configuration for GeeTest CAPTCHA solving.

          <Expandable>
            <ParamField body="enabled" type="boolean" optional>
              Enable automatic GeeTest CAPTCHA solving.

              **Default:** `false`
            </ParamField>
          </Expandable>
        </ParamField>

        <ParamField body="funcaptcha" type="object" optional>
          Configuration for FunCaptcha (Arkose Labs) solving.

          <Expandable>
            <ParamField body="enabled" type="boolean" optional>
              Enable automatic FunCaptcha solving.

              **Default:** `false`
            </ParamField>
          </Expandable>
        </ParamField>

        <ParamField body="lemin" type="object" optional>
          Configuration for Lemin CAPTCHA platform solving.

          <Expandable>
            <ParamField body="enabled" type="boolean" optional>
              Enable automatic Lemin CAPTCHA solving.

              **Default:** `false`
            </ParamField>
          </Expandable>
        </ParamField>

        <ParamField body="customCaptcha" type="object" optional>
          Configuration for custom image-based CAPTCHA solving using CSS selectors.

          <Expandable>
            <ParamField body="enabled" type="boolean" optional>
              Enable custom CAPTCHA solving.

              **Default:** `false`
            </ParamField>

            <ParamField body="imageLocators" type="array of strings" optional>
              CSS selectors for locating the CAPTCHA image element. Multiple selectors can be provided as fallbacks.

              **Example:** `["#captcha-image", ".custom-captcha img"]`
            </ParamField>

            <ParamField body="inputLocators" type="array of strings" optional>
              CSS selectors for the input field where the CAPTCHA answer is entered. Multiple selectors can be provided as fallbacks.

              **Example:** `["#captcha-input", ".captcha-field input"]`
            </ParamField>

            <ParamField body="submitLocators" type="array of strings" optional>
              CSS selectors for the button that submits the CAPTCHA answer. Multiple selectors can be provided as fallbacks.

              **Example:** `["#submit-button", "button[type='submit']"]`
            </ParamField>
          </Expandable>
        </ParamField>

        <ParamField body="text" type="object" optional>
          Configuration for text-based CAPTCHA solving (questions or puzzles) using CSS selectors.

          <Expandable>
            <ParamField body="enabled" type="boolean" optional>
              Enable text CAPTCHA solving.

              **Default:** `false`
            </ParamField>

            <ParamField body="labelLocators" type="array of strings" optional>
              CSS selectors for the challenge text or question. Multiple selectors can be provided as fallbacks.

              **Example:** `["#captcha-question", ".challenge-text"]`
            </ParamField>

            <ParamField body="inputLocators" type="array of strings" optional>
              CSS selectors for the input field where the answer is entered. Multiple selectors can be provided as fallbacks.

              **Example:** `["#answer-input", ".captcha-answer"]`
            </ParamField>

            <ParamField body="submitLocators" type="array of strings" optional>
              CSS selectors for the button that submits the answer. Multiple selectors can be provided as fallbacks.

              **Example:** `["#verify-button", "button.submit"]`
            </ParamField>
          </Expandable>
        </ParamField>

        <ParamField body="authentication" type="object" optional>
          Optional provider authentication for CAPTCHA solving services that require credentials.

          <Expandable>
            <ParamField body="type" type="string">
              Authentication strategy to use.

              **Options:**

              * `"bearer"`: Bearer token authentication
              * `"basic"`: Basic token authentication
              * `"apiKey"`: API key authentication
            </ParamField>

            <ParamField body="token" type="string" optional>
              Token value used when `type` is `"bearer"` or `"basic"`.
            </ParamField>

            <ParamField body="apiKey" type="string" optional>
              API key value used when `type` is `"apiKey"`.
            </ParamField>
          </Expandable>
        </ParamField>

        <ParamField body="settings" type="object" optional>
          Global settings for all CAPTCHA solving operations.

          <Expandable>
            <ParamField body="autoSolve" type="boolean" optional>
              Automatically solve detected CAPTCHAs without waiting for manual intervention.

              **Default:** `true`
            </ParamField>

            <ParamField body="solveDelay" type="number" optional>
              Delay in milliseconds before solving the CAPTCHA after it is detected. Useful for mimicking human behavior and avoiding bot detection.

              **Default:** `2000` (2 seconds)
            </ParamField>

            <ParamField body="maxRetries" type="number" optional>
              Maximum number of times to retry solving a CAPTCHA if solving fails.

              **Default:** `3`
            </ParamField>

            <ParamField body="timeout" type="number" optional>
              Maximum time in milliseconds to wait for a CAPTCHA to be solved before the automation fails.

              **Default:** `30000` (30 seconds)
            </ParamField>
          </Expandable>
        </ParamField>
      </Expandable>
    </ParamField>
  </Tab>
</Tabs>

## Configuration Examples

<Tabs>
  <Tab title="Basic API Project">
    ```json theme={null}
    {
      "workspaceId": "your_workspace_id",
      "projectName": "my-automation-project",
      "replication": {
        "maxConcurrentRequests": 1,
        "size": "standard"
      },
      "apiAccess": {
        "enabled": true
      },
      "stealthMode": {
        "enabled": false
      },
      "headful": false,
      "region": "us"
    }
    ```
  </Tab>

  <Tab title="Project with API Auth Sessions">
    ```json theme={null}
    {
      "workspaceId": "your_workspace_id",
      "projectName": "authenticated-scraper",
      "replication": {
        "maxConcurrentRequests": 2,
        "size": "large"
      },
      "authSessions": {
        "enabled": true,
        "type": "API"
      },
      "apiAccess": {
        "enabled": true
      },
      "stealthMode": {
        "enabled": false
      },
      "headful": false,
      "region": "us"
    }
    ```
  </Tab>

  <Tab title="Project with Manual Auth Sessions">
    ```json theme={null}
    {
      "workspaceId": "your_workspace_id",
      "projectName": "manual-auth-project",
      "replication": {
        "maxConcurrentRequests": 1,
        "size": "standard"
      },
      "authSessions": {
        "enabled": true,
        "type": "MANUAL",
        "startUrl": "https://example.com/login",
        "finishUrl": "https://example.com/dashboard",
        "browserMode": "fullscreen"
      },
      "apiAccess": {
        "enabled": true
      },
      "stealthMode": {
        "enabled": false
      },
      "headful": false,
      "region": "us"
    }
    ```
  </Tab>

  <Tab title="Jobs-Only Project">
    ```json theme={null}
    {
      "workspaceId": "your_workspace_id", 
      "projectName": "batch-processing",
      "replication": {
        "maxConcurrentRequests": 1,
        "size": "x-large"
      },
      "apiAccess": {
        "enabled": false
      },
      "stealthMode": {
        "enabled": false
      },
      "headful": true,
      "region": "us"
    }
    ```
  </Tab>

  <Tab title="Project with Defaults and Metadata">
    ```json theme={null}
    {
      "workspaceId": "your_workspace_id",
      "projectName": "configured-project",
      "replication": {
        "maxConcurrentRequests": 1,
        "size": "standard"
      },
      "authSessions": {
        "enabled": true,
        "type": "API"
      },
      "apiAccess": {
        "enabled": true
      },
      "browserSize": {
        "width": 1440,
        "height": 900
      },
      "defaults": {
        "proxy": {
          "dev": "http://<user>:<pass>@proxy.example.com:8080"
        },
        "retry": {
          "dev": {
            "maximumAttempts": 2
          },
          "deployed": {
            "maximumAttempts": 4
          }
        },
        "authSession": {
          "deployed": {
            "autoRecreate": true,
            "checkAttempts": 2,
            "createAttempts": 2
          }
        }
      },
      "metadata": {
        "defaultRunPlaygroundInput": {
          "apiName": "list",
          "parameters": {}
        }
      },
      "headful": false,
      "region": "us"
    }
    ```
  </Tab>
</Tabs>
