Skip to main content
The TypeScript SDK and docs are currently in beta. Report issues on GitHub.

Supported Types

models.OpenResponsesResultToolFunction

const value: models.OpenResponsesResultToolFunction = {
  name: "get_weather",
  parameters: {
    "properties": {
      "location": {
        "description": "The city and state",
        "type": "string",
      },
      "unit": {
        "enum": [
          "celsius",
          "fahrenheit",
        ],
        "type": "string",
        "x-speakeasy-unknown-values": "allow",
      },
    },
    "required": [
      "location",
    ],
    "type": "object",
  },
  type: "function",
};

models.PreviewWebSearchServerTool

const value: models.PreviewWebSearchServerTool = {
  type: "web_search_preview",
};

models.Preview20250311WebSearchServerTool

const value: models.Preview20250311WebSearchServerTool = {
  type: "web_search_preview_2025_03_11",
};

models.LegacyWebSearchServerTool

const value: models.LegacyWebSearchServerTool = {
  type: "web_search",
};

models.WebSearchServerTool

const value: models.WebSearchServerTool = {
  type: "web_search_2025_08_26",
};

models.FileSearchServerTool

const value: models.FileSearchServerTool = {
  type: "file_search",
  vectorStoreIds: [
    "vs_abc123",
  ],
};

models.ComputerUseServerTool

const value: models.ComputerUseServerTool = {
  displayHeight: 768,
  displayWidth: 1024,
  environment: "linux",
  type: "computer_use_preview",
};

models.CodeInterpreterServerTool

const value: models.CodeInterpreterServerTool = {
  container: "auto",
  type: "code_interpreter",
};

models.McpServerTool

const value: models.McpServerTool = {
  serverLabel: "my-server",
  type: "mcp",
};

models.ImageGenerationServerTool

const value: models.ImageGenerationServerTool = {
  type: "image_generation",
};

models.CodexLocalShellTool

const value: models.CodexLocalShellTool = {
  type: "local_shell",
};

models.ShellServerTool

const value: models.ShellServerTool = {
  type: "shell",
};

models.ApplyPatchServerTool

const value: models.ApplyPatchServerTool = {
  type: "apply_patch",
};

models.CustomTool

const value: models.CustomTool = {
  name: "my_tool",
  type: "custom",
};