# create

Endpoint: POST /api/web_search_tools
Version: 1.0.0
Security: ApiKeyAuth

## Request fields (application/json):

  - `data` (object, required)

  - `data.type` (string, required)

  - `data.attributes` (object, required)

  - `data.attributes.projectId` (string, required)

  - `data.attributes.name` (string, required)

  - `data.attributes.modelType` (string, required)
    Enum: "gpt-5", "gpt-5-mini"

  - `data.attributes.searchContextSize` (string,null)
    Enum: "low", "medium", "high"

  - `data.attributes.userLocation` (object,null)

  - `data.attributes.userLocation.type` (string, required)
    Enum: "approximate"

  - `data.attributes.userLocation.country` (string, required)

  - `data.attributes.userLocation.city` (string, required)

  - `data.attributes.userLocation.region` (string, required)

  - `data.attributes.userLocation.timezone` (string, required)

  - `data.attributes.systemPrompt` (string,null)

  - `data.attributes.filters` (object,null)

  - `data.attributes.filters.allowed_domains` (array, required)

## Response 201 fields (application/vnd.api+json):

  - `data` (object, required)

  - `data.id` (string, required)

  - `data.type` (string, required)

  - `data.links` (object, required)

  - `data.links.self` (string, required)

  - `data.attributes` (object, required)

  - `data.attributes.createdAt` (string, required)

  - `data.attributes.updatedAt` (string, required)

  - `data.attributes.projectId` (string, required)

  - `data.attributes.name` (string, required)

  - `data.attributes.modelType` (string, required)
    Enum: same as `data.attributes.modelType` (2 values)

  - `data.attributes.searchContextSize` (string,null, required)
    Enum: same as `data.attributes.searchContextSize` (3 values)

  - `data.attributes.userLocation` (object,null, required)

  - `data.attributes.userLocation.city` (string, required)

  - `data.attributes.userLocation.type` (string, required)
    Enum: same as `data.attributes.userLocation.type` (1 values)

  - `data.attributes.userLocation.region` (string, required)

  - `data.attributes.userLocation.country` (string, required)

  - `data.attributes.userLocation.timezone` (string, required)

  - `data.attributes.filters` (object,null, required)

  - `data.attributes.filters.allowed_domains` (array, required)

  - `data.attributes.isManaged` (boolean, required)

  - `data.attributes.systemPrompt` (string,null, required)

## Response 400 fields (application/vnd.api+json):

  - `errors` (array, required)

  - `errors.title` (string, required)

  - `errors.detail` (string, required)

  - `errors.code` (string, required)

  - `errors.status` (string, required)

## Response 422 fields (application/vnd.api+json):

  - `errors` (array, required)

  - `errors.title` (string, required)

  - `errors.detail` (string, required)

  - `errors.code` (string, required)

  - `errors.source` (object, required)

  - `errors.source.pointer` (string, required)

  - `errors.status` (string, required)

  - `errors.meta` (object, required)

  - `errors.meta.validationCode` (string, required)


