[Home](./index.md) > [puppeteer](./puppeteer.md) > [Protocol](./puppeteer.protocol.md) > [Runtime](./puppeteer.protocol.runtime.md) > [EvaluateRequest](./puppeteer.protocol.runtime.evaluaterequest.md)
## Protocol.Runtime.EvaluateRequest interface
Signature:
```typescript
export interface EvaluateRequest
```
## Properties
| Property | Type | Description |
| --- | --- | --- |
| [allowUnsafeEvalBlockedByCSP](./puppeteer.protocol.runtime.evaluaterequest.allowunsafeevalblockedbycsp.md) | boolean | The Content Security Policy (CSP) for the target might block 'unsafe-eval' which includes eval(), Function(), setTimeout() and setInterval() when called with non-callable arguments. This flag bypasses CSP for this evaluation and allows unsafe-eval. Defaults to true. |
| [awaitPromise](./puppeteer.protocol.runtime.evaluaterequest.awaitpromise.md) | boolean | Whether execution should await
for resulting value and return once awaited promise is resolved. |
| [contextId](./puppeteer.protocol.runtime.evaluaterequest.contextid.md) | [ExecutionContextId](./puppeteer.protocol.runtime.executioncontextid.md) | Specifies in which execution context to perform evaluation. If the parameter is omitted the evaluation will be performed in the context of the inspected page. |
| [disableBreaks](./puppeteer.protocol.runtime.evaluaterequest.disablebreaks.md) | boolean | Disable breakpoints during execution. |
| [expression](./puppeteer.protocol.runtime.evaluaterequest.expression.md) | string | Expression to evaluate. |
| [generatePreview](./puppeteer.protocol.runtime.evaluaterequest.generatepreview.md) | boolean | Whether preview should be generated for the result. |
| [includeCommandLineAPI](./puppeteer.protocol.runtime.evaluaterequest.includecommandlineapi.md) | boolean | Determines whether Command Line API should be available during the evaluation. |
| [objectGroup](./puppeteer.protocol.runtime.evaluaterequest.objectgroup.md) | string | Symbolic group name that can be used to release multiple objects. |
| [replMode](./puppeteer.protocol.runtime.evaluaterequest.replmode.md) | boolean | Setting this flag to true enables let
re-declaration and top-level await
. Note that let
variables can only be re-declared if they originate from replMode
themselves. |
| [returnByValue](./puppeteer.protocol.runtime.evaluaterequest.returnbyvalue.md) | boolean | Whether the result is expected to be a JSON object that should be sent by value. |
| [silent](./puppeteer.protocol.runtime.evaluaterequest.silent.md) | boolean | In silent mode exceptions thrown during evaluation are not reported and do not pause execution. Overrides setPauseOnException
state. |
| [throwOnSideEffect](./puppeteer.protocol.runtime.evaluaterequest.throwonsideeffect.md) | boolean | Whether to throw an exception if side effect cannot be ruled out during evaluation. This implies disableBreaks
below. |
| [timeout](./puppeteer.protocol.runtime.evaluaterequest.timeout.md) | [TimeDelta](./puppeteer.protocol.runtime.timedelta.md) | Terminate execution after timing out (number of milliseconds). |
| [userGesture](./puppeteer.protocol.runtime.evaluaterequest.usergesture.md) | boolean | Whether execution should be treated as initiated by user in the UI. |