View Source OpenApiTypesense.Collections (OpenApiTypesense v0.3.0)
Provides API endpoints related to collections
Summary
Functions
Create a new collection
Delete an alias
Delete a collection
Retrieve an alias
List all aliases
Retrieve a single collection
List all collections
Update a collection
Create or update a collection alias
Functions
@spec create_collection( OpenApiTypesense.CollectionSchema.t(), keyword() ) :: {:ok, OpenApiTypesense.CollectionResponse.t()} | {:error, OpenApiTypesense.ApiResponse.t()}
Create a new collection
When a collection is created, we give it a name and describe the fields that will be indexed from the documents added to the collection.
@spec create_collection( OpenApiTypesense.Connection.t(), OpenApiTypesense.CollectionSchema.t(), keyword() ) :: {:ok, OpenApiTypesense.CollectionResponse.t()} | {:error, OpenApiTypesense.ApiResponse.t()}
@spec delete_alias( String.t(), keyword() ) :: {:ok, OpenApiTypesense.CollectionAlias.t()} | {:error, OpenApiTypesense.ApiResponse.t()}
Delete an alias
@spec delete_alias(OpenApiTypesense.Connection.t(), String.t(), keyword()) :: {:ok, OpenApiTypesense.CollectionAlias.t()} | {:error, OpenApiTypesense.ApiResponse.t()}
@spec delete_collection( String.t(), keyword() ) :: {:ok, OpenApiTypesense.CollectionResponse.t()} | {:error, OpenApiTypesense.ApiResponse.t()}
Delete a collection
Permanently drops a collection. This action cannot be undone. For large collections, this might have an impact on read latencies.
@spec delete_collection(OpenApiTypesense.Connection.t(), String.t(), keyword()) :: {:ok, OpenApiTypesense.CollectionResponse.t()} | {:error, OpenApiTypesense.ApiResponse.t()}
@spec get_alias( String.t(), keyword() ) :: {:ok, OpenApiTypesense.CollectionAlias.t()} | {:error, OpenApiTypesense.ApiResponse.t()}
Retrieve an alias
Find out which collection an alias points to by fetching it
@spec get_alias(OpenApiTypesense.Connection.t(), String.t(), keyword()) :: {:ok, OpenApiTypesense.CollectionAlias.t()} | {:error, OpenApiTypesense.ApiResponse.t()}
@spec get_aliases(keyword()) :: {:ok, OpenApiTypesense.CollectionAliasesResponse.t()} | :error
List all aliases
List all aliases and the corresponding collections that they map to.
@spec get_aliases( OpenApiTypesense.Connection.t(), keyword() ) :: {:ok, OpenApiTypesense.CollectionAliasesResponse.t()} | :error
@spec get_collection( String.t(), keyword() ) :: {:ok, OpenApiTypesense.CollectionResponse.t()} | {:error, OpenApiTypesense.ApiResponse.t()}
Retrieve a single collection
Retrieve the details of a collection, given its name.
@spec get_collection(OpenApiTypesense.Connection.t(), String.t(), keyword()) :: {:ok, OpenApiTypesense.CollectionResponse.t()} | {:error, OpenApiTypesense.ApiResponse.t()}
@spec get_collections(keyword()) :: {:ok, [OpenApiTypesense.CollectionResponse.t()]} | :error
List all collections
Returns a summary of all your collections. The collections are returned sorted by creation date, with the most recent collections appearing first.
@spec get_collections( OpenApiTypesense.Connection.t(), keyword() ) :: {:ok, [OpenApiTypesense.CollectionResponse.t()]} | :error
@spec update_collection( String.t(), OpenApiTypesense.CollectionUpdateSchema.t(), keyword() ) :: {:ok, OpenApiTypesense.CollectionUpdateSchema.t()} | {:error, OpenApiTypesense.ApiResponse.t()}
Update a collection
Update a collection's schema to modify the fields and their types.
@spec update_collection( OpenApiTypesense.Connection.t(), String.t(), OpenApiTypesense.CollectionUpdateSchema.t(), keyword() ) :: {:ok, OpenApiTypesense.CollectionUpdateSchema.t()} | {:error, OpenApiTypesense.ApiResponse.t()}
@spec upsert_alias( String.t(), OpenApiTypesense.CollectionAliasSchema.t(), keyword() ) :: {:ok, OpenApiTypesense.CollectionAlias.t()} | {:error, OpenApiTypesense.ApiResponse.t()}
Create or update a collection alias
Create or update a collection alias. An alias is a virtual collection name that points to a real collection. If you're familiar with symbolic links on Linux, it's very similar to that. Aliases are useful when you want to reindex your data in the background on a new collection and switch your application to it without any changes to your code.
@spec upsert_alias( OpenApiTypesense.Connection.t(), String.t(), OpenApiTypesense.CollectionAliasSchema.t(), keyword() ) :: {:ok, OpenApiTypesense.CollectionAlias.t()} | {:error, OpenApiTypesense.ApiResponse.t()}