---
title: "CreateFunctionVersionBody"
description: "Request body for creating a FunctionVersion."
section: "Reference"
group: "Types"
order: 108
---

## Definition

```ts
interface CreateFunctionVersionBody {
  functionId: string;
  inputSchemaId: string;
  outputSchemaId: string;
  name?: string | undefined;
}
```

## Fields

| Field            | Type                  | Notes                                                                                                                                                     |
| ---------------- | --------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `functionId`     | `string`              | `required` — Function to create a new version of.                                                                                                         |
| `inputSchemaId`  | `string`              | `required` — Schema enforced on function input. Mandatory — callers need to know the shape contract up front.                                             |
| `outputSchemaId` | `string`              | `required` — Schema the function is expected to produce. Mandatory — composers and the agent loop need the return contract to typecheck downstream usage. |
| `name`           | `string \| undefined` | `optional` — Version name                                                                                                                                 |
