## Create Vectorize Index `client.Vectorize.Indexes.New(ctx, params) (*CreateIndex, error)` **post** `/accounts/{account_id}/vectorize/v2/indexes` Creates and returns a new Vectorize Index. ### Parameters - `params IndexNewParams` - `AccountID param.Field[string]` Path param: Identifier - `Config param.Field[IndexNewParamsConfig]` Body param: Specifies the type of configuration to use for the index. - `type IndexDimensionConfiguration struct{…}` - `Dimensions int64` Specifies the number of dimensions for the index - `Metric IndexDimensionConfigurationMetric` Specifies the type of metric to use calculating distance. - `const IndexDimensionConfigurationMetricCosine IndexDimensionConfigurationMetric = "cosine"` - `const IndexDimensionConfigurationMetricEuclidean IndexDimensionConfigurationMetric = "euclidean"` - `const IndexDimensionConfigurationMetricDOTProduct IndexDimensionConfigurationMetric = "dot-product"` - `type IndexNewParamsConfigVectorizeIndexPresetConfiguration struct{…}` - `Preset IndexNewParamsConfigVectorizeIndexPresetConfigurationPreset` Specifies the preset to use for the index. - `const IndexNewParamsConfigVectorizeIndexPresetConfigurationPresetCfBaaiBgeSmallEnV1_5 IndexNewParamsConfigVectorizeIndexPresetConfigurationPreset = "@cf/baai/bge-small-en-v1.5"` - `const IndexNewParamsConfigVectorizeIndexPresetConfigurationPresetCfBaaiBgeBaseEnV1_5 IndexNewParamsConfigVectorizeIndexPresetConfigurationPreset = "@cf/baai/bge-base-en-v1.5"` - `const IndexNewParamsConfigVectorizeIndexPresetConfigurationPresetCfBaaiBgeLargeEnV1_5 IndexNewParamsConfigVectorizeIndexPresetConfigurationPreset = "@cf/baai/bge-large-en-v1.5"` - `const IndexNewParamsConfigVectorizeIndexPresetConfigurationPresetOpenAITextEmbeddingAda002 IndexNewParamsConfigVectorizeIndexPresetConfigurationPreset = "openai/text-embedding-ada-002"` - `const IndexNewParamsConfigVectorizeIndexPresetConfigurationPresetCohereEmbedMultilingualV2_0 IndexNewParamsConfigVectorizeIndexPresetConfigurationPreset = "cohere/embed-multilingual-v2.0"` - `Name param.Field[string]` Body param - `Description param.Field[string]` Body param: Specifies the description of the index. ### Returns - `type CreateIndex struct{…}` - `Config IndexDimensionConfiguration` - `Dimensions int64` Specifies the number of dimensions for the index - `Metric IndexDimensionConfigurationMetric` Specifies the type of metric to use calculating distance. - `const IndexDimensionConfigurationMetricCosine IndexDimensionConfigurationMetric = "cosine"` - `const IndexDimensionConfigurationMetricEuclidean IndexDimensionConfigurationMetric = "euclidean"` - `const IndexDimensionConfigurationMetricDOTProduct IndexDimensionConfigurationMetric = "dot-product"` - `CreatedOn Time` Specifies the timestamp the resource was created as an ISO8601 string. - `Description string` Specifies the description of the index. - `ModifiedOn Time` Specifies the timestamp the resource was modified as an ISO8601 string. - `Name string` ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/vectorize" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) createIndex, err := client.Vectorize.Indexes.New(context.TODO(), vectorize.IndexNewParams{ AccountID: cloudflare.F("023e105f4ecef8ad9ca31a8372d0c353"), Config: cloudflare.F[vectorize.IndexNewParamsConfigUnion](vectorize.IndexDimensionConfigurationParam{ Dimensions: cloudflare.F(int64(768)), Metric: cloudflare.F(vectorize.IndexDimensionConfigurationMetricCosine), }), Name: cloudflare.F("example-index"), }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", createIndex.Config) } ``` #### Response ```json { "errors": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "messages": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "result": { "config": { "dimensions": 768, "metric": "cosine" }, "created_on": "2022-11-15T18:25:44.442097Z", "description": "This is my example index.", "modified_on": "2022-11-15T18:25:44.442097Z", "name": "example-index" }, "success": true } ```