Project: /docs/reference/js/_project.yaml
Book: /docs/reference/_book.yaml
page_type: reference
{% comment %}
DO NOT EDIT THIS FILE!
This is generated by the JS SDK team, and any local changes will be
overwritten. Changes should be made in the source code at
https://github.com/firebase/firebase-js-sdk
{% endcomment %}
# GenerateContentRequest interface
Request sent through [GenerativeModel.generateContent()](./ai.generativemodel.md#generativemodelgeneratecontent)
Signature:
```typescript
export interface GenerateContentRequest extends BaseParams
```
Extends: [BaseParams](./ai.baseparams.md#baseparams_interface)
## Properties
| Property | Type | Description |
| --- | --- | --- |
| [contents](./ai.generatecontentrequest.md#generatecontentrequestcontents) | [Content](./ai.content.md#content_interface)\[\] | |
| [systemInstruction](./ai.generatecontentrequest.md#generatecontentrequestsysteminstruction) | string \| [Part](./ai.md#part) \| [Content](./ai.content.md#content_interface) | |
| [toolConfig](./ai.generatecontentrequest.md#generatecontentrequesttoolconfig) | [ToolConfig](./ai.toolconfig.md#toolconfig_interface) | |
| [tools](./ai.generatecontentrequest.md#generatecontentrequesttools) | [Tool](./ai.md#tool)\[\] | |
## GenerateContentRequest.contents
Signature:
```typescript
contents: Content[];
```
## GenerateContentRequest.systemInstruction
Signature:
```typescript
systemInstruction?: string | Part | Content;
```
## GenerateContentRequest.toolConfig
Signature:
```typescript
toolConfig?: ToolConfig;
```
## GenerateContentRequest.tools
Signature:
```typescript
tools?: Tool[];
```