Reference

SDK API reference

Search Mimic extensions, inspect their wire types, and see the runtime behavior behind each command.

On this page

Your framework still owns navigation, locators, evaluation and events. Mimic adds runtime identity, profiles, resource policy, media and diagnostics alongside those native APIs.

Find a command

This is the current extension contract. A generated type describes a message; its support note describes the implemented behavior. Partial means the stated limits apply. Use Mimic0.2.4 or later; the SDK selects a compatible default. When connecting to a separate executable, check its runtime version.

32 commands

Mimic.cancelExecutionSession command; current runtime behavior onlypage sessionpartial

Session command; current runtime behavior only. Exact lifecycle and diagnostic payload coverage is incomplete.

Parameters CancelExecutionParams

Empty object; no fields.

Result CancelExecutionResult

cancelled required
boolean

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.captureSnapshotStatic portable DOM/assets snapshot with base64 file bodies and capture timingspage sessionpartial

Static portable DOM/assets snapshot with base64 file bodies and capture timings. Snapshot errors and supported resource limitations remain visible; no rendering backend is implied.

Parameters CaptureSnapshotParams

interrupt optional
boolean

Result CaptureSnapshotResult

url required
string
files required
Map<string, string>
warnings required
Array<string>
timingsMs required
Map<string, integer>

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.clearTraceSession command; current runtime behavior onlypage sessionpartial

Session command; current runtime behavior only. Exact lifecycle and diagnostic payload coverage is incomplete.

Parameters ClearTraceParams

Empty object; no fields.

Result ClearTraceResult

Empty object; no fields.

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.configureContextConfigure an existing empty automation-framework-owned Context atomically before creating user Pagescontextpartial

Atomically configures an existing empty framework-owned Context before Pages are created, preserving the real client Context object. Rejects live/initializing/closing Pages, retained uploads and capture workers; profile/proxy/resource/media validation failures leave the Context unchanged.

Configure an existing empty automation-framework-owned Context atomically before creating user Pages. Rejects live Pages, active capture and concurrent Page creation.

Parameters ConfigureContextParams

profile optional
ProfileSelection References: ProfileSelection
proxy optional
Proxy References: Proxy
resourcePolicy optional
ResourcePolicy References: ResourcePolicy
media optional
MediaConfiguration References: MediaConfiguration
browserContextId required
string minLength: 1

Result ConfigureContextResult

profile required
string
profileId required
string
mode required
"generated" | "manual"
warnings required
Array<string>
browserContextId required
string
media optional
MediaProfile References: MediaProfile

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.createContextCreates validated generated/imported environment contexts with optional canonical media configuration installed before creating Pagesbrowserpartial

Creates validated generated/imported environment contexts with optional canonical media configuration installed before creating Pages. Failed media configuration disposes the new Context. Existing profile token, proxy, resource policy and disposeOnDetach behavior are preserved.

Parameters CreateContextParams

profile optional
ProfileSelection References: ProfileSelection
proxy optional
Proxy References: Proxy
resourcePolicy optional
ResourcePolicy References: ResourcePolicy
disposeOnDetach optional
boolean
media optional
MediaConfiguration References: MediaConfiguration

Result CreateContextResult

profile required
string
profileId required
string
mode required
"generated" | "manual"
warnings required
Array<string>
browserContextId required
string
media optional
MediaProfile References: MediaProfile

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.exportProfileCurrent portable profile and runtime identity contractbrowserpartial

Current portable profile and runtime identity contract. Generation is limited to the installed Chrome 152 Windows behavior bundle; coherence and recipe validation remain authoritative.

Parameters ExportProfileParams

profile required
string

Result ExportProfileResult

profile required
ProfileDescriptor References: ProfileDescriptor
warnings required
Array<string>

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.generateProfileCurrent portable profile and runtime identity contractbrowserpartial

Current portable profile and runtime identity contract. Generation is limited to the installed Chrome 152 Windows behavior bundle; coherence and recipe validation remain authoritative.

Parameters GenerateProfileParams

browser optional
"chrome"
version optional
152
platform optional
"windows"
seed optional
string minLength: 1 · maxLength: 1024

Result GenerateProfileResult

profile required
string
profileId required
string
mode required
"generated" | "manual"
warnings required
Array<string>

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.getCompatibilityMatrixReturns the complete pinned Chrome wire inventory and separately pinned SDK-owned Mimic extension shapes with authoritative semantic support declarationspage sessionpartial

Returns the complete pinned Chrome wire inventory and separately pinned SDK-owned Mimic extension shapes with authoritative semantic support declarations. Generated shapes and partial scopes never imply Chrome parity or complete semantic implementation.

Parameters GetCompatibilityMatrixParams

Empty object; no fields.

Result GetCompatibilityMatrixResult

chromeVersion required
string
protocol required
Array<ProtocolCoverage> References: ProtocolCoverage
extensions required
Array<ProtocolCoverage> References: ProtocolCoverage

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.getDiagnosticsSession command; current runtime behavior onlypage sessionpartial

Session command; current runtime behavior only. Exact lifecycle and diagnostic payload coverage is incomplete.

Parameters GetDiagnosticsParams

Empty object; no fields.

Result GetDiagnosticsResult

enabled required
boolean
hostOnly optional
boolean
costs optional
Map<string, DiagnosticCost> References: DiagnosticCost
cpu_profiles optional
Map<string, JSON value>
realms optional
Array<RealmDiagnostics> References: RealmDiagnostics

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.getMediaPresetsBundled physical-camera class catalogcontextimplemented

Bundled physical-camera class catalog. Virtual inputs are capture sources only; named model equivalence is not claimed.

Parameters GetMediaPresetsParams

browserContextId optional
string minLength: 1

Result GetMediaPresetsResult

presets required
Array<MediaPreset> References: MediaPreset

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.getMediaProfileRead-only resolved catalog snapshots and private backend failure diagnostics; native bindings never become web device identitycontextimplemented

Read-only resolved catalog snapshots and private backend failure diagnostics; native bindings never become web device identity.

Parameters GetMediaProfileParams

browserContextId optional
string minLength: 1

Result GetMediaProfileResult

profile required
MediaProfile | null References: MediaProfile
diagnostics required
Map<string, string>

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.getMediaSourcesPrivate Context-scoped camera and microphone source discovery with opaque binding IDs and native backend diagnostics; enumeration does not open capture or grant web permissionscontextimplemented

Private Context-scoped camera and microphone source discovery with opaque binding IDs and native backend diagnostics; enumeration does not open capture or grant web permissions.

Parameters GetMediaSourcesParams

browserContextId optional
string minLength: 1

Result GetMediaSourcesResult

sources required
Array<MediaSource> References: MediaSource
diagnostics required
Map<string, string>

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.getProfileCanonical Context/Page environment profile projection and ordinary Page overridesbrowserpartial

Canonical Context/Page environment profile projection and ordinary Page overrides. Generated/imported profile invariants and explicit mutability boundaries are enforced; no arbitrary profile override mechanism.

Parameters GetProfileParams

browserContextId optional
string minLength: 1
targetId optional
string minLength: 1

Result GetProfileResult

profile required
EnvironmentProfile References: EnvironmentProfile
limitations required
Array<string>

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.getProfileSchemaCanonical Context/Page environment profile projection and ordinary Page overridesbrowserpartial

Canonical Context/Page environment profile projection and ordinary Page overrides. Generated/imported profile invariants and explicit mutability boundaries are enforced; no arbitrary profile override mechanism.

Parameters GetProfileSchemaParams

Empty object; no fields.

Result GetProfileSchemaResult

schema required
Map<string, JSON value>
baseProfiles required
Array<string>
limitations required
Array<string>

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.getResourcePolicyContext-owned resource policy commandcontextpartial

Context-owned resource policy command. First-match rules, supported presets and budget statistics share the loader state. Nonzero wire-byte budgets and unmodeled loader work remain unsupported.

Parameters GetResourcePolicyParams

browserContextId required
string minLength: 1

Result GetResourcePolicyResult

policy required
ResourcePolicy References: ResourcePolicy
enabled required
boolean
generation required
integer

Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON.

minimum: 0 · maximum: 9007199254740991

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.getResourcePolicySchemaContext-owned resource policy commandbrowserpartial

Context-owned resource policy command. First-match rules, supported presets and budget statistics share the loader state. Nonzero wire-byte budgets and unmodeled loader work remain unsupported.

Parameters GetResourcePolicySchemaParams

Empty object; no fields.

Result GetResourcePolicySchemaResult

schema required
Map<string, JSON value>

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.getResourcePolicyStatsContext-owned resource policy commandcontextpartial

Context-owned resource policy command. First-match rules, supported presets and budget statistics share the loader state. Nonzero wire-byte budgets and unmodeled loader work remain unsupported.

Parameters GetResourcePolicyStatsParams

browserContextId required
string minLength: 1

Result GetResourcePolicyStatsResult

stats required
ResourcePolicyStats References: ResourcePolicyStats

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.getStatusSession Page trace/status observation; trace collection starts only after explicit activationpage sessionpartial

Session Page trace/status observation; trace collection starts only after explicit activation. Payloads expose recorded runtime events and current execution state, not a full Chrome tracing engine.

Parameters GetStatusParams

Empty object; no fields.

Result GetStatusResult

execution required
ExecutionStatus References: ExecutionStatus

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.getTraceSession Page trace/status observation; trace collection starts only after explicit activationpage sessionpartial

Session Page trace/status observation; trace collection starts only after explicit activation. Payloads expose recorded runtime events and current execution state, not a full Chrome tracing engine.

Parameters GetTraceParams

Empty object; no fields.

Result GetTraceResult

events required
Array<TraceEvent> | null References: TraceEvent
crashReports required
Map<string, string>

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.getVersionCurrent portable profile and runtime identity contractbrowserpartial

Current portable profile and runtime identity contract. Generation is limited to the installed Chrome 152 Windows behavior bundle; coherence and recipe validation remain authoritative.

Parameters GetVersionParams

Empty object; no fields.

Result GetVersionResult

version required
string
chromeVersion required
string
baseProfile required
string

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.importProfileCurrent portable profile and runtime identity contractbrowserpartial

Current portable profile and runtime identity contract. Generation is limited to the installed Chrome 152 Windows behavior bundle; coherence and recipe validation remain authoritative.

Parameters ImportProfileParams

profile required
ProfileDescriptor | ManualProfile References: ManualProfile, ProfileDescriptor
mode optional
"manual"

Result ImportProfileResult

profile required
string
profileId required
string
mode required
"generated" | "manual"
warnings required
Array<string>

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.pauseSession command; current runtime behavior onlypage sessionpartial

Session command; current runtime behavior only. Exact lifecycle and diagnostic payload coverage is incomplete.

Parameters PauseParams

Empty object; no fields.

Result PauseResult

Empty object; no fields.

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.resetProfileOverridesCanonical Context/Page environment profile projection and ordinary Page overridesbrowserpartial

Canonical Context/Page environment profile projection and ordinary Page overrides. Generated/imported profile invariants and explicit mutability boundaries are enforced; no arbitrary profile override mechanism.

Parameters ResetProfileOverridesParams

targetId required
string minLength: 1

Result ResetProfileOverridesResult

profile required
EnvironmentProfile References: EnvironmentProfile

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.resumeSession command; current runtime behavior onlypage sessionpartial

Session command; current runtime behavior only. Exact lifecycle and diagnostic payload coverage is incomplete.

Parameters ResumeParams

Empty object; no fields.

Result ResumeResult

Empty object; no fields.

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.setMediaProfileAtomic Context-owned catalog replacement; stable seeded auto selection, source/identity isolation and optional microphone groupingcontextpartial

Atomic Context-owned catalog replacement; stable seeded auto selection, source/identity isolation and optional microphone grouping. Live or starting capture rejects replacement. CPU crop/scale, frame-rate reduction and optional coherent output noise; advanced native camera controls are unsupported.

Parameters SetMediaProfileParams

seed optional
string maxLength: 1024
camera optional
MediaCameraRequest References: MediaCameraRequest
microphone optional
MediaMicrophoneRequest References: MediaMicrophoneRequest
devices optional
Array<MediaDeviceProfile> maxItems: 16 References: MediaDeviceProfile
browserContextId optional
string minLength: 1

Result SetMediaProfileResult

profile required
MediaProfile References: MediaProfile
nativeModesVerified required
false

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.setViewportUpdates ordinary Page viewport through canonical environment validationpage sessionpartial

Updates ordinary Page viewport through canonical environment validation. Generated/imported profile Contexts reject identity-changing overrides.

Parameters SetViewportParams

width required
integer minimum: 1
height required
integer minimum: 1

Result SetViewportResult

Empty object; no fields.

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.startTraceSession Page trace/status observation; trace collection starts only after explicit activationpage sessionpartial

Session Page trace/status observation; trace collection starts only after explicit activation. Payloads expose recorded runtime events and current execution state, not a full Chrome tracing engine.

Parameters StartTraceParams

Empty object; no fields.

Result StartTraceResult

Empty object; no fields.

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.stopTraceSession Page trace/status observation; trace collection starts only after explicit activationpage sessionpartial

Session Page trace/status observation; trace collection starts only after explicit activation. Payloads expose recorded runtime events and current execution state, not a full Chrome tracing engine.

Parameters StopTraceParams

Empty object; no fields.

Result StopTraceResult

Empty object; no fields.

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.updateProfileCanonical Context/Page environment profile projection and ordinary Page overridesbrowserpartial

Canonical Context/Page environment profile projection and ordinary Page overrides. Generated/imported profile invariants and explicit mutability boundaries are enforced; no arbitrary profile override mechanism.

Parameters UpdateProfileParams

targetId required
string minLength: 1
patch required
ProfilePatch References: ProfilePatch

Result UpdateProfileResult

profile required
EnvironmentProfile References: EnvironmentProfile

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.updateResourcePolicyContext-owned resource policy commandcontextpartial

Context-owned resource policy command. First-match rules, supported presets and budget statistics share the loader state. Nonzero wire-byte budgets and unmodeled loader work remain unsupported.

Parameters UpdateResourcePolicyParams

browserContextId required
string minLength: 1
policy required
ResourcePolicy References: ResourcePolicy

Result UpdateResourcePolicyResult

generation required
integer

Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON.

minimum: 0 · maximum: 9007199254740991

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.validateMediaProfileCompiles deterministic complete physical-class or custom device catalogs and rejects incoherent modes/defaults, unknown controls and conflicting overridescontextpartial

Compiles deterministic complete physical-class or custom device catalogs and rejects incoherent modes/defaults, unknown controls and conflicting overrides. Native format availability is checked at capture startup, not metadata validation.

Parameters ValidateMediaProfileParams

seed optional
string maxLength: 1024
camera optional
MediaCameraRequest References: MediaCameraRequest
microphone optional
MediaMicrophoneRequest References: MediaMicrophoneRequest
devices optional
Array<MediaDeviceProfile> maxItems: 16 References: MediaDeviceProfile
browserContextId optional
string minLength: 1

Result ValidateMediaProfileResult

profile required
MediaProfile References: MediaProfile
nativeModesVerified required
false

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Mimic.validateResourcePolicyContext-owned resource policy commandbrowserpartial

Context-owned resource policy command. First-match rules, supported presets and budget statistics share the loader state. Nonzero wire-byte budgets and unmodeled loader work remain unsupported.

Parameters ValidateResourcePolicyParams

policy required
ResourcePolicy References: ResourcePolicy

Result ValidateResourcePolicyResult

policy required
ResourcePolicy References: ResourcePolicy

Required marks unconditional fields. Follow the type link for exact unions, mutually exclusive fields and other schema constraints.

Use an extension with a native Page

After installing the Playwright integration, save this as extensions.mjs and run node extensions.mjs. It uses a local document and closes the owned runtime when finished.

extensions.mjs
import { launch } from "mimic-browser/playwright";
import { ProtocolError, OMITTED } from "mimic-browser";

const session = await launch();
try {
  // Browser-level command: no Page attachment is needed.
  const version = await session.mimic.getVersion();
  console.log("Mimic", version.version, "Chrome", version.chromeVersion);

  const context = await session.newContext();
  const page = await context.newPage(); // A real Playwright Page.
  const pageMimic = await session.forPage(page);
  await pageMimic.startTrace();
  try {
    await page.setContent("<title>Extension example</title><h1>Hello</h1>");
    console.log(await page.title());
    const status = await pageMimic.getStatus();
    const trace = await pageMimic.getTrace();
    console.log(status, "Recorded events:", trace.events?.length ?? 0);
  } finally {
    await pageMimic.stopTrace();
  }
} catch (error) {
  if (error instanceof ProtocolError) {
    console.error(error.code, error.message);
    if (error.data !== OMITTED) console.error(error.data);
  }
  throw error;
} finally {
  await session.close();
  if (session.closeErrors.length) console.error(session.closeErrors);
}

Trace collection starts explicitly and records Mimic runtime events. It is not a replacement for Chrome's full tracing system.

Choose the scope explicitly

Browser

Call session.mimic for version, profile generation and browser-level catalogs. No Page is selected implicitly.

Context

Supply browserContextId when the command accepts it, or use a documented Context helper. An optional ID can select the default Context when omitted; a Page attachment does not fill it in.

Page session

Bind a client to the real Page before calling trace, status, snapshot or execution commands. SDK session IDs and framework session IDs are connection-local.

Do not copy a session ID from a different connection. If an adapter has no Page helper, use Target.attachToTarget with flatten: true on the SDK transport, then bind its returned session ID on that transport. A Context helper only supplies a Context ID; it does not attach to a Page.

Context configuration explains profile and resource-policy ownership. Media configuration explains Context-bound private sources and public device identity.

Language bindings

Each SDK uses its language's naming conventions and generated parameter/result models. These entry points assume an existing integration session.

JavaScript / TypeScript

Version: await session.mimic.getVersion()

Scope helper: await session.forPage(page)

Playwright and Puppeteer. The returned client binds session commands to that real Page.

Python

Version: session.mimic.get_version()

Scope helper: session.for_page(page)

Sync Playwright uses direct calls; await both operations with the async API. Generated fields use snake_case.

C# / .NET

Version: await session.Mimic.Commands.GetVersionAsync()

Scope helper: ForContextAsync(context) / ForContext(context)

Playwright / PuppeteerSharp Context helpers. Page sessions use ProtocolConnection.Session(id) after Target.attachToTarget on that same connection.

Java / Kotlin

Version: session.mimic().commands().getVersion(new Generated.GetVersionParams())

Scope helper: session.forContext(context)

Playwright, with the same Java artifact usable from Kotlin. Page sessions use ProtocolConnection.session(id) after an explicit attachment on that connection.

Go

Version: session.Mimic.GetVersion(ctx, mimic.GetVersionParams{})

Scope helper: session.ForPage(page) / session.ForPage(ctx)

Rod accepts its real Page; chromedp accepts the target context and returns a client plus an error. Commands take context.Context.

Rust

Version: session.mimic.get_version(GetVersionParams::default()).await?

Scope helper: session.for_page(&page).await?

chromiumoxide. Generated parameters and result fields use snake_case; native Page objects stay unchanged.

Ruby

Version: session.mimic.get_version

Scope helper: session.for_page(page)

Ferrum. Generated models and methods use snake_case.

PHP

Version: $session->mimic->commands->getVersion()

Scope helper: $session->forPage($page)

chrome-php. forPage returns a Context capability handle, not a page-session client. Use $connection->session($id) for an explicitly attached page session.

These helpers accompany actual framework Browser, Context and Page objects. Use the native framework's API for its normal operations; generated Mimic methods do not recreate Playwright or Puppeteer. CDP events remain owned by the framework. The current Mimic extension domain declares no separate events.

Types & validation

The names below are wire model names. Optional means the field may be omitted; it does not mean null is valid. Use your binding's unset/optional representation to preserve omission. The runtime also validates cross-field coherence, resource ownership and current state beyond these JSON shapes.

123 types

CameraFormat3 fields
{
  "type": "object",
  "properties": {
    "width": {
      "type": "integer",
      "minimum": 1,
      "maximum": 8192
    },
    "height": {
      "type": "integer",
      "minimum": 1,
      "maximum": 8192
    },
    "frameRate": {
      "type": "number",
      "minimum": 1,
      "maximum": 120
    }
  },
  "required": [
    "width",
    "height",
    "frameRate"
  ],
  "additionalProperties": false
}
CancelExecutionParamsobject
{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
CancelExecutionResult1 fields
{
  "type": "object",
  "properties": {
    "cancelled": {
      "type": "boolean"
    }
  },
  "required": [
    "cancelled"
  ],
  "additionalProperties": false
}
CaptureSnapshotParams1 fields
{
  "type": "object",
  "properties": {
    "interrupt": {
      "type": "boolean"
    }
  },
  "required": [],
  "additionalProperties": false
}
CaptureSnapshotResult4 fields
{
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "files": {
      "type": "object",
      "additionalProperties": {
        "type": "string",
        "contentEncoding": "base64"
      }
    },
    "warnings": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "timingsMs": {
      "type": "object",
      "additionalProperties": {
        "type": "integer",
        "minimum": 0,
        "maximum": 9007199254740991,
        "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
      }
    }
  },
  "required": [
    "url",
    "files",
    "warnings",
    "timingsMs"
  ],
  "additionalProperties": false
}
ClearTraceParamsobject
{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
ClearTraceResultobject
{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
ConfigureContextParams5 fields
{
  "type": "object",
  "properties": {
    "profile": {
      "$ref": "#/$defs/ProfileSelection"
    },
    "proxy": {
      "$ref": "#/$defs/Proxy"
    },
    "resourcePolicy": {
      "$ref": "#/$defs/ResourcePolicy"
    },
    "media": {
      "$ref": "#/$defs/MediaConfiguration"
    },
    "browserContextId": {
      "type": "string",
      "minLength": 1
    }
  },
  "required": [
    "browserContextId"
  ],
  "additionalProperties": false
}
ConfigureContextResult6 fields
{
  "type": "object",
  "properties": {
    "profile": {
      "type": "string"
    },
    "profileId": {
      "type": "string"
    },
    "mode": {
      "type": "string",
      "enum": [
        "generated",
        "manual"
      ]
    },
    "warnings": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "browserContextId": {
      "type": "string"
    },
    "media": {
      "$ref": "#/$defs/MediaProfile"
    }
  },
  "required": [
    "profile",
    "profileId",
    "mode",
    "warnings",
    "browserContextId"
  ],
  "additionalProperties": false
}
CreateContextParams5 fields
{
  "type": "object",
  "properties": {
    "profile": {
      "$ref": "#/$defs/ProfileSelection"
    },
    "proxy": {
      "$ref": "#/$defs/Proxy"
    },
    "resourcePolicy": {
      "$ref": "#/$defs/ResourcePolicy"
    },
    "disposeOnDetach": {
      "type": "boolean"
    },
    "media": {
      "$ref": "#/$defs/MediaConfiguration"
    }
  },
  "required": [],
  "additionalProperties": false
}
CreateContextResult6 fields
{
  "type": "object",
  "properties": {
    "profile": {
      "type": "string"
    },
    "profileId": {
      "type": "string"
    },
    "mode": {
      "type": "string",
      "enum": [
        "generated",
        "manual"
      ]
    },
    "warnings": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "browserContextId": {
      "type": "string"
    },
    "media": {
      "$ref": "#/$defs/MediaProfile"
    }
  },
  "required": [
    "profile",
    "profileId",
    "mode",
    "warnings",
    "browserContextId"
  ],
  "additionalProperties": false
}
DiagnosticCost2 fields
{
  "type": "object",
  "properties": {
    "count": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    },
    "ns": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    }
  },
  "required": [
    "count",
    "ns"
  ],
  "additionalProperties": false
}
Diagnostics5 fields
{
  "type": "object",
  "properties": {
    "enabled": {
      "type": "boolean"
    },
    "hostOnly": {
      "type": "boolean"
    },
    "costs": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/$defs/DiagnosticCost"
      }
    },
    "cpu_profiles": {
      "type": "object",
      "additionalProperties": {}
    },
    "realms": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/RealmDiagnostics"
      }
    }
  },
  "required": [
    "enabled"
  ],
  "additionalProperties": false
}
Emptyobject
{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
EnvironmentAudio4 fields
{
  "type": "object",
  "properties": {
    "sampleRate": {
      "type": "number"
    },
    "channels": {
      "type": "integer"
    },
    "bufferDuration": {
      "type": "number"
    },
    "maxBufferFrames": {
      "type": "integer"
    }
  },
  "required": [],
  "additionalProperties": false
}
EnvironmentCapabilities4 fields
{
  "type": "object",
  "properties": {
    "storageQuotaBytes": {
      "type": "integer"
    },
    "devices": {
      "$ref": "#/$defs/EnvironmentDeviceCapabilities"
    },
    "media": {
      "$ref": "#/$defs/EnvironmentMediaCapabilities"
    },
    "keyboardLayout": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      }
    }
  },
  "required": [],
  "additionalProperties": false
}
EnvironmentDeviceCapabilities2 fields
{
  "type": "object",
  "properties": {
    "bluetoothAvailable": {
      "type": "boolean"
    },
    "posture": {
      "type": "string"
    }
  },
  "required": [],
  "additionalProperties": false
}
EnvironmentDisplay7 fields
{
  "type": "object",
  "properties": {
    "width": {
      "type": "integer"
    },
    "height": {
      "type": "integer"
    },
    "availableWidth": {
      "type": "integer"
    },
    "availableHeight": {
      "type": "integer"
    },
    "deviceScaleFactor": {
      "type": "number"
    },
    "colorDepth": {
      "type": "integer"
    },
    "orientation": {
      "$ref": "#/$defs/EnvironmentScreenOrientation"
    }
  },
  "required": [],
  "additionalProperties": false
}
EnvironmentFonts6 fields
{
  "type": "object",
  "properties": {
    "serif": {
      "type": "string"
    },
    "sansSerif": {
      "type": "string"
    },
    "monospace": {
      "type": "string"
    },
    "systemUI": {
      "type": "string"
    },
    "system": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      }
    },
    "fallback": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [],
  "additionalProperties": false
}
EnvironmentGPUAdapter11 fields
{
  "type": "object",
  "properties": {
    "vendor": {
      "type": "string"
    },
    "architecture": {
      "type": "string"
    },
    "device": {
      "type": "string"
    },
    "description": {
      "type": "string"
    },
    "subgroupMinSize": {
      "type": "integer"
    },
    "subgroupMaxSize": {
      "type": "integer"
    },
    "isFallbackAdapter": {
      "type": "boolean"
    },
    "features": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "limits": {
      "type": "object",
      "additionalProperties": {
        "type": "integer"
      }
    },
    "wgslLanguageFeatures": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "initializationDelayMillis": {
      "type": "number"
    }
  },
  "required": [],
  "additionalProperties": false
}
EnvironmentGraphics6 fields
{
  "type": "object",
  "properties": {
    "vendor": {
      "type": "string"
    },
    "renderer": {
      "type": "string"
    },
    "maxTextureSize": {
      "type": "integer"
    },
    "webGLCapabilitiesJSON": {
      "type": "string"
    },
    "webGPU": {
      "$ref": "#/$defs/EnvironmentGPUAdapter"
    },
    "webGPUAdapters": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/$defs/EnvironmentGPUAdapter"
      }
    }
  },
  "required": [],
  "additionalProperties": false
}
EnvironmentHardware4 fields
{
  "type": "object",
  "properties": {
    "cpuPerformance": {
      "type": "integer"
    },
    "cpuPerformanceKnown": {
      "type": "boolean"
    },
    "logicalProcessors": {
      "type": "integer"
    },
    "deviceMemoryGB": {
      "type": "number"
    }
  },
  "required": [],
  "additionalProperties": false
}
EnvironmentICEProfile9 fields
{
  "type": "object",
  "properties": {
    "hostCandidateCount": {
      "type": "integer"
    },
    "reflexiveCandidateCount": {
      "type": "integer"
    },
    "portOffsets": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "reflexivePortOffsets": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "publicAddress": {
      "type": "string"
    },
    "networkCost": {
      "type": "integer"
    },
    "hostDelayMillis": {
      "type": "number"
    },
    "reflexiveDelayMillis": {
      "type": "number"
    },
    "endDelayMillis": {
      "type": "number"
    }
  },
  "required": [],
  "additionalProperties": false
}
EnvironmentIdentity3 fields
{
  "type": "object",
  "properties": {
    "userAgent": {
      "type": "string"
    },
    "platform": {
      "type": "string"
    },
    "metadata": {
      "$ref": "#/$defs/EnvironmentUserAgentMetadata"
    }
  },
  "required": [],
  "additionalProperties": false
}
EnvironmentLocale4 fields
{
  "type": "object",
  "properties": {
    "reduceAcceptLanguage": {
      "type": "boolean"
    },
    "languages": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "intlLocale": {
      "type": "string"
    },
    "timezone": {
      "type": "string"
    }
  },
  "required": [],
  "additionalProperties": false
}
EnvironmentMediaCapabilities4 fields
{
  "type": "object",
  "properties": {
    "rtp": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/$defs/EnvironmentRTPMediaCatalog"
      }
    },
    "formats": {
      "$ref": "#/$defs/EnvironmentMediaFormatCatalog"
    },
    "kinds": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "supportedConstraints": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [],
  "additionalProperties": false
}
EnvironmentMediaContainerPolicy3 fields
{
  "type": "object",
  "properties": {
    "codecs": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "defaultCodec": {
      "type": "string"
    },
    "mediaSource": {
      "type": "boolean"
    }
  },
  "required": [],
  "additionalProperties": false
}
EnvironmentMediaFormatCatalog2 fields
{
  "type": "object",
  "properties": {
    "containers": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/$defs/EnvironmentMediaContainerPolicy"
      }
    },
    "efficientVideo": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [],
  "additionalProperties": false
}
EnvironmentNetwork9 fields
{
  "type": "object",
  "properties": {
    "saveData": {
      "type": "boolean"
    },
    "online": {
      "type": "boolean"
    },
    "effectiveType": {
      "type": "string"
    },
    "downlinkMbps": {
      "type": "number"
    },
    "rttMillis": {
      "type": "number"
    },
    "cookiesEnabled": {
      "type": "boolean"
    },
    "wireProfile": {
      "type": "string"
    },
    "ice": {
      "$ref": "#/$defs/EnvironmentICEProfile"
    },
    "proxy": {
      "$ref": "#/$defs/EnvironmentProxy"
    }
  },
  "required": [],
  "additionalProperties": false
}
EnvironmentPreferences4 fields
{
  "type": "object",
  "properties": {
    "colorScheme": {
      "type": "string"
    },
    "systemColors": {
      "type": "object",
      "additionalProperties": {
        "type": "object",
        "additionalProperties": {
          "type": "string"
        }
      }
    },
    "reducedMotion": {
      "type": "boolean"
    },
    "doNotTrack": {
      "type": "boolean"
    }
  },
  "required": [],
  "additionalProperties": false
}
EnvironmentProfile16 fields
{
  "type": "object",
  "properties": {
    "schemaVersion": {
      "type": "integer"
    },
    "baseProfile": {
      "type": "string"
    },
    "identity": {
      "$ref": "#/$defs/EnvironmentIdentity"
    },
    "display": {
      "$ref": "#/$defs/EnvironmentDisplay"
    },
    "window": {
      "$ref": "#/$defs/EnvironmentWindow"
    },
    "hardware": {
      "$ref": "#/$defs/EnvironmentHardware"
    },
    "locale": {
      "$ref": "#/$defs/EnvironmentLocale"
    },
    "graphics": {
      "$ref": "#/$defs/EnvironmentGraphics"
    },
    "audio": {
      "$ref": "#/$defs/EnvironmentAudio"
    },
    "fonts": {
      "$ref": "#/$defs/EnvironmentFonts"
    },
    "preferences": {
      "$ref": "#/$defs/EnvironmentPreferences"
    },
    "network": {
      "$ref": "#/$defs/EnvironmentNetwork"
    },
    "permissions": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      }
    },
    "capabilities": {
      "$ref": "#/$defs/EnvironmentCapabilities"
    },
    "features": {
      "type": "object",
      "additionalProperties": {
        "type": "boolean"
      }
    },
    "timing": {
      "$ref": "#/$defs/EnvironmentTiming"
    }
  },
  "required": [],
  "additionalProperties": false
}
EnvironmentProxy3 fields
{
  "type": "object",
  "properties": {
    "server": {
      "type": "string"
    },
    "username": {
      "type": "string"
    },
    "password": {
      "type": "string"
    }
  },
  "required": [],
  "additionalProperties": false
}
EnvironmentRTPCodec9 fields
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "clockRate": {
      "type": "integer"
    },
    "channels": {
      "type": "integer"
    },
    "parameters": {
      "type": "string"
    },
    "senderParameters": {
      "type": "string"
    },
    "feedback": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "payload": {
      "type": "integer"
    },
    "rtxPayload": {
      "type": "integer"
    },
    "redundant": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [],
  "additionalProperties": false
}
EnvironmentRTPMediaCatalog6 fields
{
  "type": "object",
  "properties": {
    "codecs": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/$defs/EnvironmentRTPCodec"
      }
    },
    "senderOrder": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "receiverOrder": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "offerOrder": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "headerExtensions": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "receiverRTT": {
      "type": "boolean"
    }
  },
  "required": [],
  "additionalProperties": false
}
EnvironmentScreenOrientation2 fields
{
  "type": "object",
  "properties": {
    "type": {
      "type": "string"
    },
    "angle": {
      "type": "integer"
    }
  },
  "required": [],
  "additionalProperties": false
}
EnvironmentTiming3 fields
{
  "type": "object",
  "properties": {
    "executionScale": {
      "type": "number"
    },
    "navigationScale": {
      "type": "number"
    },
    "networkScale": {
      "type": "number"
    }
  },
  "required": [],
  "additionalProperties": false
}
EnvironmentUserAgentBrand3 fields
{
  "type": "object",
  "properties": {
    "brand": {
      "type": "string"
    },
    "version": {
      "type": "string"
    },
    "fullVersion": {
      "type": "string"
    }
  },
  "required": [],
  "additionalProperties": false
}
EnvironmentUserAgentMetadata11 fields
{
  "type": "object",
  "properties": {
    "brands": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/EnvironmentUserAgentBrand"
      }
    },
    "fullVersionList": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/EnvironmentUserAgentBrand"
      }
    },
    "formFactors": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "fullVersion": {
      "type": "string"
    },
    "platform": {
      "type": "string"
    },
    "platformVersion": {
      "type": "string"
    },
    "architecture": {
      "type": "string"
    },
    "model": {
      "type": "string"
    },
    "bitness": {
      "type": "string"
    },
    "mobile": {
      "type": "boolean"
    },
    "wow64": {
      "type": "boolean"
    }
  },
  "required": [],
  "additionalProperties": false
}
EnvironmentWindow6 fields
{
  "type": "object",
  "properties": {
    "x": {
      "type": "integer"
    },
    "y": {
      "type": "integer"
    },
    "outerWidth": {
      "type": "integer"
    },
    "outerHeight": {
      "type": "integer"
    },
    "viewportWidth": {
      "type": "integer"
    },
    "viewportHeight": {
      "type": "integer"
    }
  },
  "required": [],
  "additionalProperties": false
}
ExecutionStatus5 fields
{
  "type": "object",
  "properties": {
    "running": {
      "type": "boolean"
    },
    "taskId": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    },
    "source": {
      "type": "string"
    },
    "phase": {
      "type": "string"
    },
    "elapsedMs": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    }
  },
  "required": [
    "running",
    "taskId",
    "source",
    "phase",
    "elapsedMs"
  ],
  "additionalProperties": false
}
ExportProfileParams1 fields
{
  "type": "object",
  "properties": {
    "profile": {
      "type": "string"
    }
  },
  "required": [
    "profile"
  ],
  "additionalProperties": false
}
ExportProfileResult2 fields
{
  "type": "object",
  "properties": {
    "profile": {
      "$ref": "#/$defs/ProfileDescriptor"
    },
    "warnings": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "profile",
    "warnings"
  ],
  "additionalProperties": false
}
GenerateProfileOptions4 fields
{
  "type": "object",
  "properties": {
    "browser": {
      "type": "string",
      "enum": [
        "chrome"
      ]
    },
    "version": {
      "type": "integer",
      "const": 152
    },
    "platform": {
      "type": "string",
      "enum": [
        "windows"
      ]
    },
    "seed": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1024
    }
  },
  "required": [],
  "additionalProperties": false
}
GenerateProfileParams4 fields
{
  "type": "object",
  "properties": {
    "browser": {
      "type": "string",
      "enum": [
        "chrome"
      ]
    },
    "version": {
      "type": "integer",
      "const": 152
    },
    "platform": {
      "type": "string",
      "enum": [
        "windows"
      ]
    },
    "seed": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1024
    }
  },
  "required": [],
  "additionalProperties": false
}
GenerateProfileResult4 fields
{
  "type": "object",
  "properties": {
    "profile": {
      "type": "string"
    },
    "profileId": {
      "type": "string"
    },
    "mode": {
      "type": "string",
      "enum": [
        "generated",
        "manual"
      ]
    },
    "warnings": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "profile",
    "profileId",
    "mode",
    "warnings"
  ],
  "additionalProperties": false
}
GenerateProfileSelection1 fields
{
  "type": "object",
  "properties": {
    "generate": {
      "$ref": "#/$defs/GenerateProfileOptions"
    }
  },
  "required": [
    "generate"
  ],
  "additionalProperties": false
}
GetCompatibilityMatrixParamsobject
{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
GetCompatibilityMatrixResult3 fields
{
  "type": "object",
  "properties": {
    "chromeVersion": {
      "type": "string"
    },
    "protocol": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/ProtocolCoverage"
      }
    },
    "extensions": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/ProtocolCoverage"
      }
    }
  },
  "required": [
    "chromeVersion",
    "protocol",
    "extensions"
  ],
  "additionalProperties": false
}
GetDiagnosticsParamsobject
{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
GetDiagnosticsResult5 fields
{
  "type": "object",
  "properties": {
    "enabled": {
      "type": "boolean"
    },
    "hostOnly": {
      "type": "boolean"
    },
    "costs": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/$defs/DiagnosticCost"
      }
    },
    "cpu_profiles": {
      "type": "object",
      "additionalProperties": {}
    },
    "realms": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/RealmDiagnostics"
      }
    }
  },
  "required": [
    "enabled"
  ],
  "additionalProperties": false
}
GetMediaPresetsParams1 fields
{
  "type": "object",
  "properties": {
    "browserContextId": {
      "type": "string",
      "minLength": 1
    }
  },
  "required": [],
  "additionalProperties": false
}
GetMediaPresetsResult1 fields
{
  "type": "object",
  "properties": {
    "presets": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/MediaPreset"
      }
    }
  },
  "required": [
    "presets"
  ],
  "additionalProperties": false
}
GetMediaProfileParams1 fields
{
  "type": "object",
  "properties": {
    "browserContextId": {
      "type": "string",
      "minLength": 1
    }
  },
  "required": [],
  "additionalProperties": false
}
GetMediaProfileResult2 fields
{
  "type": "object",
  "properties": {
    "profile": {
      "oneOf": [
        {
          "$ref": "#/$defs/MediaProfile"
        },
        {
          "type": "null"
        }
      ]
    },
    "diagnostics": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      }
    }
  },
  "required": [
    "profile",
    "diagnostics"
  ],
  "additionalProperties": false
}
GetMediaSourcesParams1 fields
{
  "type": "object",
  "properties": {
    "browserContextId": {
      "type": "string",
      "minLength": 1
    }
  },
  "required": [],
  "additionalProperties": false
}
GetMediaSourcesResult2 fields
{
  "type": "object",
  "properties": {
    "sources": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/MediaSource"
      }
    },
    "diagnostics": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      }
    }
  },
  "required": [
    "sources",
    "diagnostics"
  ],
  "additionalProperties": false
}
GetProfileParams2 fields
{
  "type": "object",
  "properties": {
    "browserContextId": {
      "type": "string",
      "minLength": 1
    },
    "targetId": {
      "type": "string",
      "minLength": 1
    }
  },
  "required": [],
  "additionalProperties": false,
  "oneOf": [
    {
      "required": [
        "browserContextId"
      ],
      "not": {
        "required": [
          "targetId"
        ]
      }
    },
    {
      "required": [
        "targetId"
      ],
      "not": {
        "required": [
          "browserContextId"
        ]
      }
    }
  ]
}
GetProfileResult2 fields
{
  "type": "object",
  "properties": {
    "profile": {
      "$ref": "#/$defs/EnvironmentProfile"
    },
    "limitations": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "profile",
    "limitations"
  ],
  "additionalProperties": false
}
GetProfileSchemaParamsobject
{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
GetProfileSchemaResult3 fields
{
  "type": "object",
  "properties": {
    "schema": {
      "type": "object",
      "additionalProperties": {}
    },
    "baseProfiles": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "limitations": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "schema",
    "baseProfiles",
    "limitations"
  ],
  "additionalProperties": false
}
GetResourcePolicyParams1 fields
{
  "type": "object",
  "properties": {
    "browserContextId": {
      "type": "string",
      "minLength": 1
    }
  },
  "required": [
    "browserContextId"
  ],
  "additionalProperties": false
}
GetResourcePolicyResult3 fields
{
  "type": "object",
  "properties": {
    "policy": {
      "$ref": "#/$defs/ResourcePolicy"
    },
    "enabled": {
      "type": "boolean"
    },
    "generation": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    }
  },
  "required": [
    "policy",
    "enabled",
    "generation"
  ],
  "additionalProperties": false
}
GetResourcePolicySchemaParamsobject
{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
GetResourcePolicySchemaResult1 fields
{
  "type": "object",
  "properties": {
    "schema": {
      "type": "object",
      "additionalProperties": {}
    }
  },
  "required": [
    "schema"
  ],
  "additionalProperties": false
}
GetResourcePolicyStatsParams1 fields
{
  "type": "object",
  "properties": {
    "browserContextId": {
      "type": "string",
      "minLength": 1
    }
  },
  "required": [
    "browserContextId"
  ],
  "additionalProperties": false
}
GetResourcePolicyStatsResult1 fields
{
  "type": "object",
  "properties": {
    "stats": {
      "$ref": "#/$defs/ResourcePolicyStats"
    }
  },
  "required": [
    "stats"
  ],
  "additionalProperties": false
}
GetStatusParamsobject
{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
GetStatusResult1 fields
{
  "type": "object",
  "properties": {
    "execution": {
      "$ref": "#/$defs/ExecutionStatus"
    }
  },
  "required": [
    "execution"
  ],
  "additionalProperties": false
}
GetTraceParamsobject
{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
GetTraceResult2 fields
{
  "type": "object",
  "properties": {
    "events": {
      "oneOf": [
        {
          "type": "array",
          "items": {
            "$ref": "#/$defs/TraceEvent"
          }
        },
        {
          "type": "null"
        }
      ]
    },
    "crashReports": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      }
    }
  },
  "required": [
    "events",
    "crashReports"
  ],
  "additionalProperties": false
}
GetVersionParamsobject
{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
GetVersionResult3 fields
{
  "type": "object",
  "properties": {
    "version": {
      "type": "string"
    },
    "chromeVersion": {
      "type": "string"
    },
    "baseProfile": {
      "type": "string"
    }
  },
  "required": [
    "version",
    "chromeVersion",
    "baseProfile"
  ],
  "additionalProperties": false
}
ImportProfileParams2 fields
{
  "type": "object",
  "properties": {
    "profile": {
      "oneOf": [
        {
          "$ref": "#/$defs/ProfileDescriptor"
        },
        {
          "$ref": "#/$defs/ManualProfile"
        }
      ]
    },
    "mode": {
      "type": "string",
      "enum": [
        "manual"
      ]
    }
  },
  "required": [
    "profile"
  ],
  "additionalProperties": false
}
ImportProfileResult4 fields
{
  "type": "object",
  "properties": {
    "profile": {
      "type": "string"
    },
    "profileId": {
      "type": "string"
    },
    "mode": {
      "type": "string",
      "enum": [
        "generated",
        "manual"
      ]
    },
    "warnings": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "profile",
    "profileId",
    "mode",
    "warnings"
  ],
  "additionalProperties": false
}
ManualNetwork8 fields
{
  "type": "object",
  "properties": {
    "saveData": {
      "type": "boolean"
    },
    "online": {
      "type": "boolean"
    },
    "effectiveType": {
      "type": "string"
    },
    "downlinkMbps": {
      "type": "number"
    },
    "rttMillis": {
      "type": "number"
    },
    "cookiesEnabled": {
      "type": "boolean"
    },
    "wireProfile": {
      "type": "string"
    },
    "ice": {
      "$ref": "#/$defs/EnvironmentICEProfile"
    }
  },
  "required": [],
  "additionalProperties": false
}
ManualProfile14 fields
{
  "type": "object",
  "properties": {
    "identity": {
      "$ref": "#/$defs/EnvironmentIdentity"
    },
    "display": {
      "$ref": "#/$defs/EnvironmentDisplay"
    },
    "window": {
      "$ref": "#/$defs/EnvironmentWindow"
    },
    "hardware": {
      "$ref": "#/$defs/EnvironmentHardware"
    },
    "locale": {
      "$ref": "#/$defs/EnvironmentLocale"
    },
    "graphics": {
      "$ref": "#/$defs/EnvironmentGraphics"
    },
    "audio": {
      "$ref": "#/$defs/EnvironmentAudio"
    },
    "fonts": {
      "$ref": "#/$defs/EnvironmentFonts"
    },
    "preferences": {
      "$ref": "#/$defs/EnvironmentPreferences"
    },
    "network": {
      "$ref": "#/$defs/ManualNetwork"
    },
    "permissions": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      }
    },
    "capabilities": {
      "$ref": "#/$defs/EnvironmentCapabilities"
    },
    "features": {
      "type": "object",
      "additionalProperties": {
        "type": "boolean"
      }
    },
    "timing": {
      "$ref": "#/$defs/EnvironmentTiming"
    }
  },
  "required": [],
  "additionalProperties": false
}
MediaCameraRequest3 fields
{
  "type": "object",
  "properties": {
    "source": {
      "$ref": "#/$defs/MediaSourceSelector"
    },
    "profile": {
      "type": "string",
      "enum": [
        "auto",
        "integrated-webcam",
        "usb-webcam",
        "integrated-webcam-hd",
        "integrated-webcam-fhd",
        "usb-webcam-hd",
        "usb-webcam-fhd"
      ]
    },
    "overrides": {
      "$ref": "#/$defs/MediaDeviceOverride"
    }
  },
  "required": [],
  "additionalProperties": false
}
MediaConfiguration4 fields

Choose devices (including an explicit empty list) or camera/microphone shorthand. Source matching, device uniqueness and mode coherence are validated by the runtime.

{
  "type": "object",
  "properties": {
    "seed": {
      "type": "string",
      "maxLength": 1024
    },
    "camera": {
      "$ref": "#/$defs/MediaCameraRequest"
    },
    "microphone": {
      "$ref": "#/$defs/MediaMicrophoneRequest"
    },
    "devices": {
      "type": "array",
      "maxItems": 16,
      "items": {
        "$ref": "#/$defs/MediaDeviceProfile"
      }
    }
  },
  "required": [],
  "additionalProperties": false,
  "description": "Choose devices (including an explicit empty list) or camera/microphone shorthand. Source matching, device uniqueness and mode coherence are validated by the runtime.",
  "oneOf": [
    {
      "required": [
        "devices"
      ],
      "not": {
        "anyOf": [
          {
            "required": [
              "camera"
            ]
          },
          {
            "required": [
              "microphone"
            ]
          }
        ]
      }
    },
    {
      "anyOf": [
        {
          "required": [
            "camera"
          ]
        },
        {
          "required": [
            "microphone"
          ]
        }
      ],
      "not": {
        "required": [
          "devices"
        ]
      }
    }
  ]
}
MediaDeviceOverride4 fields
{
  "type": "object",
  "properties": {
    "label": {
      "type": "string"
    },
    "modes": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/CameraFormat"
      }
    },
    "defaultMode": {
      "$ref": "#/$defs/CameraFormat"
    },
    "processing": {
      "$ref": "#/$defs/MediaProcessing"
    }
  },
  "required": [],
  "additionalProperties": false
}
MediaDeviceProfile9 fields
{
  "type": "object",
  "properties": {
    "key": {
      "type": "string",
      "minLength": 1,
      "maxLength": 256
    },
    "kind": {
      "type": "string",
      "enum": [
        "videoinput",
        "audioinput"
      ]
    },
    "source": {
      "$ref": "#/$defs/MediaSourceSelector"
    },
    "profile": {
      "type": "string"
    },
    "label": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1024
    },
    "group": {
      "type": "string",
      "maxLength": 256
    },
    "modes": {
      "type": "array",
      "minItems": 1,
      "maxItems": 64,
      "items": {
        "$ref": "#/$defs/CameraFormat"
      }
    },
    "defaultMode": {
      "$ref": "#/$defs/CameraFormat"
    },
    "processing": {
      "$ref": "#/$defs/MediaProcessing"
    }
  },
  "required": [
    "key",
    "kind",
    "source",
    "label"
  ],
  "additionalProperties": false
}
MediaMicrophoneRequest2 fields
{
  "type": "object",
  "properties": {
    "source": {
      "$ref": "#/$defs/MediaSourceSelector"
    },
    "profile": {
      "type": "string",
      "enum": [
        "webcam"
      ]
    }
  },
  "required": [],
  "additionalProperties": false
}
MediaPreset4 fields
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "label": {
      "type": "string"
    },
    "class": {
      "type": "string"
    },
    "variants": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "id",
    "label",
    "class",
    "variants"
  ],
  "additionalProperties": false
}
MediaProcessing2 fields
{
  "type": "object",
  "properties": {
    "resize": {
      "type": "string",
      "enum": [
        "none",
        "crop-and-scale"
      ]
    },
    "noise": {
      "type": "number",
      "minimum": 0,
      "maximum": 8
    }
  },
  "required": [],
  "additionalProperties": false
}
MediaProfile2 fields
{
  "type": "object",
  "properties": {
    "seed": {
      "type": "string"
    },
    "devices": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/MediaDeviceProfile"
      }
    }
  },
  "required": [
    "seed",
    "devices"
  ],
  "additionalProperties": false
}
MediaSource4 fields
{
  "type": "object",
  "properties": {
    "sourceId": {
      "type": "string"
    },
    "kind": {
      "type": "string",
      "enum": [
        "videoinput",
        "audioinput"
      ]
    },
    "label": {
      "type": "string"
    },
    "default": {
      "type": "boolean"
    }
  },
  "required": [
    "sourceId",
    "kind",
    "label",
    "default"
  ],
  "additionalProperties": false
}
MediaSourceSelector"default" | "obs" | object | object
{
  "oneOf": [
    {
      "type": "string",
      "enum": [
        "default",
        "obs"
      ]
    },
    {
      "type": "object",
      "properties": {
        "sourceId": {
          "type": "string",
          "minLength": 1
        }
      },
      "required": [
        "sourceId"
      ],
      "additionalProperties": false
    },
    {
      "type": "object",
      "properties": {
        "label": {
          "type": "string",
          "minLength": 1
        }
      },
      "required": [
        "label"
      ],
      "additionalProperties": false
    }
  ]
}
PauseParamsobject
{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
PauseResultobject
{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
ProfileDescriptor5 fields
{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "enum": [
        "generated",
        "manual"
      ]
    },
    "baseProfile": {
      "type": "string"
    },
    "seed": {
      "type": "string"
    },
    "profileId": {
      "type": "string"
    },
    "environment": {
      "$ref": "#/$defs/ManualProfile"
    }
  },
  "required": [
    "mode",
    "baseProfile",
    "profileId"
  ],
  "additionalProperties": false
}
ProfileErrorData3 fields
{
  "type": "object",
  "properties": {
    "path": {
      "type": "string"
    },
    "reason": {
      "type": "string"
    },
    "message": {
      "type": "string"
    }
  },
  "required": [
    "path",
    "reason",
    "message"
  ],
  "additionalProperties": false
}
ProfilePatch14 fields
{
  "type": "object",
  "properties": {
    "identity": {
      "$ref": "#/$defs/EnvironmentIdentity"
    },
    "display": {
      "$ref": "#/$defs/EnvironmentDisplay"
    },
    "window": {
      "$ref": "#/$defs/EnvironmentWindow"
    },
    "hardware": {
      "$ref": "#/$defs/EnvironmentHardware"
    },
    "locale": {
      "$ref": "#/$defs/EnvironmentLocale"
    },
    "graphics": {
      "$ref": "#/$defs/EnvironmentGraphics"
    },
    "audio": {
      "$ref": "#/$defs/EnvironmentAudio"
    },
    "fonts": {
      "$ref": "#/$defs/EnvironmentFonts"
    },
    "preferences": {
      "$ref": "#/$defs/EnvironmentPreferences"
    },
    "network": {
      "$ref": "#/$defs/ManualNetwork"
    },
    "permissions": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      }
    },
    "capabilities": {
      "$ref": "#/$defs/EnvironmentCapabilities"
    },
    "features": {
      "type": "object",
      "additionalProperties": {
        "type": "boolean"
      }
    },
    "timing": {
      "$ref": "#/$defs/EnvironmentTiming"
    }
  },
  "required": [],
  "additionalProperties": false
}
ProfileSelectionstring | GenerateProfileSelection
{
  "oneOf": [
    {
      "type": "string"
    },
    {
      "$ref": "#/$defs/GenerateProfileSelection"
    }
  ]
}
ProtocolCoverage9 fields
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "kind": {
      "type": "string"
    },
    "surfaceRegistered": {
      "type": "boolean"
    },
    "wireSchemaGenerated": {
      "type": "boolean"
    },
    "status": {
      "type": "string",
      "enum": [
        "unsupported",
        "partial",
        "implemented"
      ]
    },
    "notes": {
      "type": "string"
    },
    "tests": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "semanticsImplemented": {
      "type": "boolean"
    },
    "semanticsVerified": {
      "type": "boolean"
    }
  },
  "required": [
    "name",
    "kind",
    "surfaceRegistered",
    "wireSchemaGenerated",
    "status",
    "semanticsImplemented",
    "semanticsVerified"
  ],
  "additionalProperties": false
}
ProtocolError3 fields

Protocol error payload; preserve code, message and arbitrary data unchanged.

{
  "type": "object",
  "properties": {
    "code": {
      "type": "integer"
    },
    "message": {
      "type": "string"
    },
    "data": {}
  },
  "required": [
    "code",
    "message"
  ],
  "additionalProperties": false,
  "description": "Protocol error payload; preserve code, message and arbitrary data unchanged."
}
Proxy3 fields
{
  "type": "object",
  "properties": {
    "server": {
      "type": "string"
    },
    "username": {
      "type": "string"
    },
    "password": {
      "type": "string"
    }
  },
  "required": [],
  "additionalProperties": false
}
RealmDiagnostics2 fields
{
  "type": "object",
  "properties": {
    "realm": {
      "type": "string"
    },
    "diagnostics": {
      "$ref": "#/$defs/Diagnostics"
    }
  },
  "required": [
    "realm",
    "diagnostics"
  ],
  "additionalProperties": false
}
ResetProfileOverridesParams1 fields
{
  "type": "object",
  "properties": {
    "targetId": {
      "type": "string",
      "minLength": 1
    }
  },
  "required": [
    "targetId"
  ],
  "additionalProperties": false
}
ResetProfileOverridesResult1 fields
{
  "type": "object",
  "properties": {
    "profile": {
      "$ref": "#/$defs/EnvironmentProfile"
    }
  },
  "required": [
    "profile"
  ],
  "additionalProperties": false
}
ResourceBudgets7 fields
{
  "type": "object",
  "properties": {
    "maxRequests": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    },
    "maxConcurrent": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    },
    "maxWireBytes": {
      "type": "integer",
      "const": 0,
      "description": "Nonzero wire budgets are not implemented by the runtime."
    },
    "maxBodyBytes": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    },
    "maxResponseBytes": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    },
    "maxDecodedBytes": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    },
    "maxRetainedBytes": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    }
  },
  "required": [],
  "additionalProperties": false
}
ResourceMatch7 fields
{
  "type": "object",
  "properties": {
    "kinds": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "document",
          "iframe",
          "script",
          "stylesheet",
          "image",
          "font",
          "media",
          "favicon",
          "preload",
          "fetch",
          "xhr",
          "worker",
          "websocket",
          "other"
        ]
      }
    },
    "hosts": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "origins": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "urlGlob": {
      "type": "string"
    },
    "owners": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "mechanisms": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "topLevelSite": {
      "type": "string"
    }
  },
  "required": [],
  "additionalProperties": false
}
ResourcePolicy4 fields
{
  "type": "object",
  "properties": {
    "reportOnly": {
      "type": "boolean"
    },
    "presets": {
      "type": "array",
      "uniqueItems": true,
      "items": {
        "type": "string",
        "enum": [
          "noVisualAssets",
          "headersOnly",
          "dataExtraction",
          "noSpeculativeLoads"
        ]
      }
    },
    "rules": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/ResourceRule"
      }
    },
    "budgets": {
      "$ref": "#/$defs/ResourceBudgets"
    }
  },
  "required": [],
  "additionalProperties": false
}
ResourcePolicyStats18 fields
{
  "type": "object",
  "properties": {
    "generation": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    },
    "requests": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    },
    "networkAcquisitions": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    },
    "cacheHits": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    },
    "blocked": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    },
    "headerOnly": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    },
    "prefixes": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    },
    "wireBytesKnown": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    },
    "encodedNetworkBodyBytes": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    },
    "bodyBytesConsumed": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    },
    "retainedBodyBytes": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    },
    "decodedPixelWorkBytes": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    },
    "knownAvoidedBodyReadBytes": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    },
    "unknownAvoidedBodyRequests": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    },
    "wouldBlock": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    },
    "wouldBypassCache": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    },
    "budgetDenied": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    },
    "byRule": {
      "type": "object",
      "additionalProperties": {
        "type": "integer",
        "minimum": 0,
        "maximum": 9007199254740991,
        "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
      }
    }
  },
  "required": [
    "generation",
    "requests",
    "networkAcquisitions",
    "cacheHits",
    "blocked",
    "headerOnly",
    "prefixes",
    "wireBytesKnown",
    "encodedNetworkBodyBytes",
    "bodyBytesConsumed",
    "retainedBodyBytes",
    "decodedPixelWorkBytes",
    "knownAvoidedBodyReadBytes",
    "unknownAvoidedBodyRequests",
    "wouldBlock",
    "wouldBypassCache",
    "budgetDenied",
    "byRule"
  ],
  "additionalProperties": false
}
ResourceRule3 fields
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1
    },
    "match": {
      "$ref": "#/$defs/ResourceMatch"
    },
    "work": {
      "$ref": "#/$defs/ResourceWork"
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
ResourceWork7 fields
{
  "type": "object",
  "properties": {
    "cacheRead": {
      "type": "boolean"
    },
    "network": {
      "type": "boolean"
    },
    "body": {
      "type": "string",
      "enum": [
        "full",
        "none",
        "prefix"
      ]
    },
    "prefixBytes": {
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "decode": {
      "type": "boolean"
    },
    "cacheRetain": {
      "type": "boolean"
    },
    "debugRetain": {
      "type": "boolean"
    }
  },
  "required": [],
  "additionalProperties": false
}
ResumeParamsobject
{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
ResumeResultobject
{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
SetMediaProfileParams5 fields

Choose devices (including an explicit empty list) or camera/microphone shorthand. Source matching, device uniqueness and mode coherence are validated by the runtime.

{
  "type": "object",
  "properties": {
    "seed": {
      "type": "string",
      "maxLength": 1024
    },
    "camera": {
      "$ref": "#/$defs/MediaCameraRequest"
    },
    "microphone": {
      "$ref": "#/$defs/MediaMicrophoneRequest"
    },
    "devices": {
      "type": "array",
      "maxItems": 16,
      "items": {
        "$ref": "#/$defs/MediaDeviceProfile"
      }
    },
    "browserContextId": {
      "type": "string",
      "minLength": 1
    }
  },
  "required": [],
  "additionalProperties": false,
  "description": "Choose devices (including an explicit empty list) or camera/microphone shorthand. Source matching, device uniqueness and mode coherence are validated by the runtime.",
  "oneOf": [
    {
      "required": [
        "devices"
      ],
      "not": {
        "anyOf": [
          {
            "required": [
              "camera"
            ]
          },
          {
            "required": [
              "microphone"
            ]
          }
        ]
      }
    },
    {
      "anyOf": [
        {
          "required": [
            "camera"
          ]
        },
        {
          "required": [
            "microphone"
          ]
        }
      ],
      "not": {
        "required": [
          "devices"
        ]
      }
    }
  ]
}
SetMediaProfileResult2 fields
{
  "type": "object",
  "properties": {
    "profile": {
      "$ref": "#/$defs/MediaProfile"
    },
    "nativeModesVerified": {
      "type": "boolean",
      "const": false
    }
  },
  "required": [
    "profile",
    "nativeModesVerified"
  ],
  "additionalProperties": false
}
SetViewportParams2 fields
{
  "type": "object",
  "properties": {
    "width": {
      "type": "integer",
      "minimum": 1
    },
    "height": {
      "type": "integer",
      "minimum": 1
    }
  },
  "required": [
    "width",
    "height"
  ],
  "additionalProperties": false
}
SetViewportResultobject
{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
StartTraceParamsobject
{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
StartTraceResultobject
{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
StopTraceParamsobject
{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
StopTraceResultobject
{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
TraceEvent5 fields
{
  "type": "object",
  "properties": {
    "sequence": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    },
    "time": {
      "type": "string",
      "format": "date-time"
    },
    "kind": {
      "type": "string"
    },
    "name": {
      "type": "string"
    },
    "data": {
      "type": "object",
      "additionalProperties": {}
    }
  },
  "required": [
    "sequence",
    "time",
    "kind",
    "name"
  ],
  "additionalProperties": false
}
UpdateProfileParams2 fields
{
  "type": "object",
  "properties": {
    "targetId": {
      "type": "string",
      "minLength": 1
    },
    "patch": {
      "$ref": "#/$defs/ProfilePatch"
    }
  },
  "required": [
    "targetId",
    "patch"
  ],
  "additionalProperties": false
}
UpdateProfileResult1 fields
{
  "type": "object",
  "properties": {
    "profile": {
      "$ref": "#/$defs/EnvironmentProfile"
    }
  },
  "required": [
    "profile"
  ],
  "additionalProperties": false
}
UpdateResourcePolicyParams2 fields
{
  "type": "object",
  "properties": {
    "browserContextId": {
      "type": "string",
      "minLength": 1
    },
    "policy": {
      "$ref": "#/$defs/ResourcePolicy"
    }
  },
  "required": [
    "browserContextId",
    "policy"
  ],
  "additionalProperties": false
}
UpdateResourcePolicyResult1 fields
{
  "type": "object",
  "properties": {
    "generation": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Exact interoperable JSON integer. Runtime counters may eventually exceed the portable range; raw calls retain original JSON."
    }
  },
  "required": [
    "generation"
  ],
  "additionalProperties": false
}
ValidateMediaProfileParams5 fields

Choose devices (including an explicit empty list) or camera/microphone shorthand. Source matching, device uniqueness and mode coherence are validated by the runtime.

{
  "type": "object",
  "properties": {
    "seed": {
      "type": "string",
      "maxLength": 1024
    },
    "camera": {
      "$ref": "#/$defs/MediaCameraRequest"
    },
    "microphone": {
      "$ref": "#/$defs/MediaMicrophoneRequest"
    },
    "devices": {
      "type": "array",
      "maxItems": 16,
      "items": {
        "$ref": "#/$defs/MediaDeviceProfile"
      }
    },
    "browserContextId": {
      "type": "string",
      "minLength": 1
    }
  },
  "required": [],
  "additionalProperties": false,
  "description": "Choose devices (including an explicit empty list) or camera/microphone shorthand. Source matching, device uniqueness and mode coherence are validated by the runtime.",
  "oneOf": [
    {
      "required": [
        "devices"
      ],
      "not": {
        "anyOf": [
          {
            "required": [
              "camera"
            ]
          },
          {
            "required": [
              "microphone"
            ]
          }
        ]
      }
    },
    {
      "anyOf": [
        {
          "required": [
            "camera"
          ]
        },
        {
          "required": [
            "microphone"
          ]
        }
      ],
      "not": {
        "required": [
          "devices"
        ]
      }
    }
  ]
}
ValidateMediaProfileResult2 fields
{
  "type": "object",
  "properties": {
    "profile": {
      "$ref": "#/$defs/MediaProfile"
    },
    "nativeModesVerified": {
      "type": "boolean",
      "const": false
    }
  },
  "required": [
    "profile",
    "nativeModesVerified"
  ],
  "additionalProperties": false
}
ValidateResourcePolicyParams1 fields
{
  "type": "object",
  "properties": {
    "policy": {
      "$ref": "#/$defs/ResourcePolicy"
    }
  },
  "required": [
    "policy"
  ],
  "additionalProperties": false
}
ValidateResourcePolicyResult1 fields
{
  "type": "object",
  "properties": {
    "policy": {
      "$ref": "#/$defs/ResourcePolicy"
    }
  },
  "required": [
    "policy"
  ],
  "additionalProperties": false
}

This site's snapshot combines the SDK's schema/mimic/protocol.json with runtime internal/cdp/protocol_support.json. It is independent of the installed runtime; use Mimic.getVersion and Mimic.getCompatibilityMatrix to inspect the connected implementation.

Errors, timeouts & cleanup

Protocol errors and unsupported behavior

A valid generated call can still fail because the runtime does not implement it, the selected scope is wrong, or the Context is locked or busy. Keep the protocol error code, message and structured data when reporting a failure. Native framework operations continue to produce native framework errors.

Unknown methods and invalid parameters remain errors. Raw/experimental access sends an explicit method and JSON through the same SDK transport; it does not add runtime support or silently fall back to another command. In Node, client.experimental.call("getVersion", {}) takes the exact Mimic leaf name.

Timeouts and retries

A client timeout or cancellation stops waiting; it does not prove that the runtime rolled back the request. Check state before retrying a mutation, especially Context creation or profile replacement. Set framework navigation/action timeouts through the framework, and SDK transport timeouts through that binding's transport options.

Do not automatically retry all protocol errors. Preserve the original response and determine whether the operation is safe to repeat.

Connection and process ownership

Close the integration in finally or its language's disposal construct. A launched session owns its runtime process. A connected session owns its connection and Contexts it created; closing it must leave the shared runtime running. Explicitly dispose resources created through raw commands yourself.

A disconnected transport rejects pending requests. Page-bound extension clients belong to that connection and Page lifecycle. Reconnect and bind again after either is replaced.