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

Supported Types

models.ResponsesRequestToolFunction

const value: models.ResponsesRequestToolFunction = {
  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",
};

models.DatetimeServerTool

const value: models.DatetimeServerTool = {
  type: "openrouter:datetime",
};

models.FusionServerToolOpenRouter

const value: models.FusionServerToolOpenRouter = {
  type: "openrouter:fusion",
};

models.ImageGenerationServerToolOpenRouter

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

models.ChatSearchModelsServerTool

const value: models.ChatSearchModelsServerTool = {
  type: "openrouter:experimental__search_models",
};

models.WebFetchServerTool

const value: models.WebFetchServerTool = {
  type: "openrouter:web_fetch",
};

models.WebSearchServerToolOpenRouter

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

models.ApplyPatchServerToolOpenRouter

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