@@ -12,10 +12,17 @@ defmodule OpenApiTypesense.Collections do
1212
1313 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.
1414 """
15+ @ spec create_collection ( OpenApiTypesense.CollectionSchema . t ( ) , keyword ) ::
16+ { :ok , OpenApiTypesense.CollectionResponse . t ( ) }
17+ | { :error , OpenApiTypesense.ApiResponse . t ( ) }
18+ def create_collection ( body , opts \\ [ ] ) do
19+ create_collection ( Connection . new ( ) , body , opts )
20+ end
21+
1522 @ spec create_collection ( Connection . t ( ) , OpenApiTypesense.CollectionSchema . t ( ) , keyword ) ::
1623 { :ok , OpenApiTypesense.CollectionResponse . t ( ) }
1724 | { :error , OpenApiTypesense.ApiResponse . t ( ) }
18- def create_collection ( conn \\ Connection . new ( ) , body , opts \\ [ ] ) do
25+ def create_collection ( conn , body , opts ) do
1926 client = opts [ :client ] || @ default_client
2027
2128 client . request ( conn , % {
@@ -37,9 +44,15 @@ defmodule OpenApiTypesense.Collections do
3744 @ doc """
3845 Delete an alias
3946 """
47+ @ spec delete_alias ( String . t ( ) , keyword ) ::
48+ { :ok , OpenApiTypesense.CollectionAlias . t ( ) } | { :error , OpenApiTypesense.ApiResponse . t ( ) }
49+ def delete_alias ( aliasName , opts \\ [ ] ) do
50+ delete_alias ( Connection . new ( ) , aliasName , opts )
51+ end
52+
4053 @ spec delete_alias ( Connection . t ( ) , String . t ( ) , keyword ) ::
4154 { :ok , OpenApiTypesense.CollectionAlias . t ( ) } | { :error , OpenApiTypesense.ApiResponse . t ( ) }
42- def delete_alias ( conn \\ Connection . new ( ) , aliasName , opts \\ [ ] ) do
55+ def delete_alias ( conn , aliasName , opts ) do
4356 client = opts [ :client ] || @ default_client
4457
4558 client . request ( conn , % {
@@ -60,10 +73,17 @@ defmodule OpenApiTypesense.Collections do
6073
6174 Permanently drops a collection. This action cannot be undone. For large collections, this might have an impact on read latencies.
6275 """
76+ @ spec delete_collection ( String . t ( ) , keyword ) ::
77+ { :ok , OpenApiTypesense.CollectionResponse . t ( ) }
78+ | { :error , OpenApiTypesense.ApiResponse . t ( ) }
79+ def delete_collection ( collectionName , opts \\ [ ] ) do
80+ delete_collection ( Connection . new ( ) , collectionName , opts )
81+ end
82+
6383 @ spec delete_collection ( Connection . t ( ) , String . t ( ) , keyword ) ::
6484 { :ok , OpenApiTypesense.CollectionResponse . t ( ) }
6585 | { :error , OpenApiTypesense.ApiResponse . t ( ) }
66- def delete_collection ( conn \\ Connection . new ( ) , collectionName , opts \\ [ ] ) do
86+ def delete_collection ( conn , collectionName , opts ) do
6787 client = opts [ :client ] || @ default_client
6888
6989 client . request ( conn , % {
@@ -84,9 +104,15 @@ defmodule OpenApiTypesense.Collections do
84104
85105 Find out which collection an alias points to by fetching it
86106 """
107+ @ spec get_alias ( String . t ( ) , keyword ) ::
108+ { :ok , OpenApiTypesense.CollectionAlias . t ( ) } | { :error , OpenApiTypesense.ApiResponse . t ( ) }
109+ def get_alias ( aliasName , opts \\ [ ] ) do
110+ get_alias ( Connection . new ( ) , aliasName , opts )
111+ end
112+
87113 @ spec get_alias ( Connection . t ( ) , String . t ( ) , keyword ) ::
88114 { :ok , OpenApiTypesense.CollectionAlias . t ( ) } | { :error , OpenApiTypesense.ApiResponse . t ( ) }
89- def get_alias ( conn \\ Connection . new ( ) , aliasName , opts \\ [ ] ) do
115+ def get_alias ( conn , aliasName , opts ) do
90116 client = opts [ :client ] || @ default_client
91117
92118 client . request ( conn , % {
@@ -107,9 +133,15 @@ defmodule OpenApiTypesense.Collections do
107133
108134 List all aliases and the corresponding collections that they map to.
109135 """
136+ @ spec get_aliases ( keyword ) ::
137+ { :ok , OpenApiTypesense.CollectionAliasesResponse . t ( ) } | :error
138+ def get_aliases ( opts \\ [ ] ) do
139+ get_aliases ( Connection . new ( ) , opts )
140+ end
141+
110142 @ spec get_aliases ( Connection . t ( ) , keyword ) ::
111143 { :ok , OpenApiTypesense.CollectionAliasesResponse . t ( ) } | :error
112- def get_aliases ( conn \\ Connection . new ( ) , opts \\ [ ] ) do
144+ def get_aliases ( conn , opts ) do
113145 client = opts [ :client ] || @ default_client
114146
115147 client . request ( conn , % {
@@ -127,10 +159,17 @@ defmodule OpenApiTypesense.Collections do
127159
128160 Retrieve the details of a collection, given its name.
129161 """
162+ @ spec get_collection ( String . t ( ) , keyword ) ::
163+ { :ok , OpenApiTypesense.CollectionResponse . t ( ) }
164+ | { :error , OpenApiTypesense.ApiResponse . t ( ) }
165+ def get_collection ( collectionName , opts \\ [ ] ) do
166+ get_collection ( Connection . new ( ) , collectionName , opts )
167+ end
168+
130169 @ spec get_collection ( Connection . t ( ) , String . t ( ) , keyword ) ::
131170 { :ok , OpenApiTypesense.CollectionResponse . t ( ) }
132171 | { :error , OpenApiTypesense.ApiResponse . t ( ) }
133- def get_collection ( conn \\ Connection . new ( ) , collectionName , opts \\ [ ] ) do
172+ def get_collection ( conn , collectionName , opts ) do
134173 client = opts [ :client ] || @ default_client
135174
136175 client . request ( conn , % {
@@ -151,9 +190,15 @@ defmodule OpenApiTypesense.Collections do
151190
152191 Returns a summary of all your collections. The collections are returned sorted by creation date, with the most recent collections appearing first.
153192 """
193+ @ spec get_collections ( keyword ) ::
194+ { :ok , [ OpenApiTypesense.CollectionResponse . t ( ) ] } | :error
195+ def get_collections ( opts \\ [ ] ) do
196+ get_collections ( Connection . new ( ) , opts )
197+ end
198+
154199 @ spec get_collections ( Connection . t ( ) , keyword ) ::
155200 { :ok , [ OpenApiTypesense.CollectionResponse . t ( ) ] } | :error
156- def get_collections ( conn \\ Connection . new ( ) , opts \\ [ ] ) do
201+ def get_collections ( conn , opts ) do
157202 client = opts [ :client ] || @ default_client
158203
159204 client . request ( conn , % {
@@ -171,6 +216,17 @@ defmodule OpenApiTypesense.Collections do
171216
172217 Update a collection's schema to modify the fields and their types.
173218 """
219+ @ spec update_collection (
220+ String . t ( ) ,
221+ OpenApiTypesense.CollectionUpdateSchema . t ( ) ,
222+ keyword
223+ ) ::
224+ { :ok , OpenApiTypesense.CollectionUpdateSchema . t ( ) }
225+ | { :error , OpenApiTypesense.ApiResponse . t ( ) }
226+ def update_collection ( collectionName , body , opts \\ [ ] ) do
227+ update_collection ( Connection . new ( ) , collectionName , body , opts )
228+ end
229+
174230 @ spec update_collection (
175231 Connection . t ( ) ,
176232 String . t ( ) ,
@@ -179,7 +235,7 @@ defmodule OpenApiTypesense.Collections do
179235 ) ::
180236 { :ok , OpenApiTypesense.CollectionUpdateSchema . t ( ) }
181237 | { :error , OpenApiTypesense.ApiResponse . t ( ) }
182- def update_collection ( conn \\ Connection . new ( ) , collectionName , body , opts \\ [ ] ) do
238+ def update_collection ( conn , collectionName , body , opts ) do
183239 client = opts [ :client ] || @ default_client
184240
185241 client . request ( conn , % {
@@ -203,14 +259,24 @@ defmodule OpenApiTypesense.Collections do
203259
204260 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.
205261 """
262+ @ spec upsert_alias (
263+ String . t ( ) ,
264+ OpenApiTypesense.CollectionAliasSchema . t ( ) ,
265+ keyword
266+ ) ::
267+ { :ok , OpenApiTypesense.CollectionAlias . t ( ) } | { :error , OpenApiTypesense.ApiResponse . t ( ) }
268+ def upsert_alias ( aliasName , body , opts \\ [ ] ) do
269+ upsert_alias ( Connection . new ( ) , aliasName , body , opts )
270+ end
271+
206272 @ spec upsert_alias (
207273 Connection . t ( ) ,
208274 String . t ( ) ,
209275 OpenApiTypesense.CollectionAliasSchema . t ( ) ,
210276 keyword
211277 ) ::
212278 { :ok , OpenApiTypesense.CollectionAlias . t ( ) } | { :error , OpenApiTypesense.ApiResponse . t ( ) }
213- def upsert_alias ( conn \\ Connection . new ( ) , aliasName , body , opts \\ [ ] ) do
279+ def upsert_alias ( conn , aliasName , body , opts ) do
214280 client = opts [ :client ] || @ default_client
215281
216282 client . request ( conn , % {
0 commit comments