Skip to content

Commit c351bd9

Browse files
algolia-botClaraMullermillotpshortcuts
committed
feat(specs): merge composition & composition-full (generated)
algolia/api-clients-automation#5333 Co-authored-by: algolia-bot <[email protected]> Co-authored-by: Clara Muller <[email protected]> Co-authored-by: Pierre Millot <[email protected]> Co-authored-by: shortcuts <[email protected]>
1 parent b092646 commit c351bd9

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

52 files changed

+1956
-0
lines changed

client/src/commonMain/kotlin/com/algolia/client/api/CompositionClient.kt

Lines changed: 334 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,318 @@ public class CompositionClient(
3333
).apply { shuffle() }
3434
}
3535

36+
/**
37+
* This method lets you send requests to the Algolia REST API.
38+
* @param path Path of the endpoint, for example `1/newFeature`.
39+
* @param parameters Query parameters to apply to the current query.
40+
* @param requestOptions additional request configuration.
41+
*/
42+
public suspend fun customDelete(path: String, parameters: Map<kotlin.String, Any>? = null, requestOptions: RequestOptions? = null): JsonObject {
43+
require(path.isNotBlank()) { "Parameter `path` is required when calling `customDelete`." }
44+
val requestConfig = RequestConfig(
45+
method = RequestMethod.DELETE,
46+
path = "/{path}".replace("{path}", path),
47+
query = buildMap {
48+
parameters?.let { putAll(it) }
49+
},
50+
)
51+
return requester.execute(
52+
requestConfig = requestConfig,
53+
requestOptions = requestOptions,
54+
)
55+
}
56+
57+
/**
58+
* This method lets you send requests to the Algolia REST API.
59+
* @param path Path of the endpoint, for example `1/newFeature`.
60+
* @param parameters Query parameters to apply to the current query.
61+
* @param requestOptions additional request configuration.
62+
*/
63+
public suspend fun customGet(path: String, parameters: Map<kotlin.String, Any>? = null, requestOptions: RequestOptions? = null): JsonObject {
64+
require(path.isNotBlank()) { "Parameter `path` is required when calling `customGet`." }
65+
val requestConfig = RequestConfig(
66+
method = RequestMethod.GET,
67+
path = "/{path}".replace("{path}", path),
68+
query = buildMap {
69+
parameters?.let { putAll(it) }
70+
},
71+
)
72+
return requester.execute(
73+
requestConfig = requestConfig,
74+
requestOptions = requestOptions,
75+
)
76+
}
77+
78+
/**
79+
* This method lets you send requests to the Algolia REST API.
80+
* @param path Path of the endpoint, for example `1/newFeature`.
81+
* @param parameters Query parameters to apply to the current query.
82+
* @param body Parameters to send with the custom request.
83+
* @param requestOptions additional request configuration.
84+
*/
85+
public suspend fun customPost(path: String, parameters: Map<kotlin.String, Any>? = null, body: JsonObject? = null, requestOptions: RequestOptions? = null): JsonObject {
86+
require(path.isNotBlank()) { "Parameter `path` is required when calling `customPost`." }
87+
val requestConfig = RequestConfig(
88+
method = RequestMethod.POST,
89+
path = "/{path}".replace("{path}", path),
90+
query = buildMap {
91+
parameters?.let { putAll(it) }
92+
},
93+
body = body,
94+
)
95+
return requester.execute(
96+
requestConfig = requestConfig,
97+
requestOptions = requestOptions,
98+
)
99+
}
100+
101+
/**
102+
* This method lets you send requests to the Algolia REST API.
103+
* @param path Path of the endpoint, for example `1/newFeature`.
104+
* @param parameters Query parameters to apply to the current query.
105+
* @param body Parameters to send with the custom request.
106+
* @param requestOptions additional request configuration.
107+
*/
108+
public suspend fun customPut(path: String, parameters: Map<kotlin.String, Any>? = null, body: JsonObject? = null, requestOptions: RequestOptions? = null): JsonObject {
109+
require(path.isNotBlank()) { "Parameter `path` is required when calling `customPut`." }
110+
val requestConfig = RequestConfig(
111+
method = RequestMethod.PUT,
112+
path = "/{path}".replace("{path}", path),
113+
query = buildMap {
114+
parameters?.let { putAll(it) }
115+
},
116+
body = body,
117+
)
118+
return requester.execute(
119+
requestConfig = requestConfig,
120+
requestOptions = requestOptions,
121+
)
122+
}
123+
124+
/**
125+
* Delete a composition from the current Algolia application.
126+
*
127+
* Required API Key ACLs:
128+
* - editSettings
129+
* @param compositionID Unique Composition ObjectID.
130+
* @param requestOptions additional request configuration.
131+
*/
132+
public suspend fun deleteComposition(compositionID: String, requestOptions: RequestOptions? = null): TaskIDResponse {
133+
require(compositionID.isNotBlank()) { "Parameter `compositionID` is required when calling `deleteComposition`." }
134+
val requestConfig = RequestConfig(
135+
method = RequestMethod.DELETE,
136+
path = listOf("1", "compositions", "$compositionID"),
137+
)
138+
return requester.execute(
139+
requestConfig = requestConfig,
140+
requestOptions = requestOptions,
141+
)
142+
}
143+
144+
/**
145+
* Delete a Composition Rule from the specified Composition ID.
146+
*
147+
* Required API Key ACLs:
148+
* - editSettings
149+
* @param compositionID Unique Composition ObjectID.
150+
* @param objectID Unique identifier of a rule object.
151+
* @param requestOptions additional request configuration.
152+
*/
153+
public suspend fun deleteCompositionRule(compositionID: String, objectID: String, requestOptions: RequestOptions? = null): TaskIDResponse {
154+
require(compositionID.isNotBlank()) { "Parameter `compositionID` is required when calling `deleteCompositionRule`." }
155+
require(objectID.isNotBlank()) { "Parameter `objectID` is required when calling `deleteCompositionRule`." }
156+
val requestConfig = RequestConfig(
157+
method = RequestMethod.DELETE,
158+
path = listOf("1", "compositions", "$compositionID", "rules", "$objectID"),
159+
)
160+
return requester.execute(
161+
requestConfig = requestConfig,
162+
requestOptions = requestOptions,
163+
)
164+
}
165+
166+
/**
167+
* Retrieve a single composition in the current Algolia application.
168+
*
169+
* Required API Key ACLs:
170+
* - editSettings
171+
* - settings
172+
* @param compositionID Unique Composition ObjectID.
173+
* @param requestOptions additional request configuration.
174+
*/
175+
public suspend fun getComposition(compositionID: String, requestOptions: RequestOptions? = null): Composition {
176+
require(compositionID.isNotBlank()) { "Parameter `compositionID` is required when calling `getComposition`." }
177+
val requestConfig = RequestConfig(
178+
method = RequestMethod.GET,
179+
path = listOf("1", "compositions", "$compositionID"),
180+
)
181+
return requester.execute(
182+
requestConfig = requestConfig,
183+
requestOptions = requestOptions,
184+
)
185+
}
186+
187+
/**
188+
* Retrieves a rule by its ID. To find the object ID of rules, use the [`search` operation](#tag/Rules/operation/searchRules).
189+
*
190+
* Required API Key ACLs:
191+
* - editSettings
192+
* - settings
193+
* @param compositionID Unique Composition ObjectID.
194+
* @param objectID Unique identifier of a rule object.
195+
* @param requestOptions additional request configuration.
196+
*/
197+
public suspend fun getRule(compositionID: String, objectID: String, requestOptions: RequestOptions? = null): CompositionRule {
198+
require(compositionID.isNotBlank()) { "Parameter `compositionID` is required when calling `getRule`." }
199+
require(objectID.isNotBlank()) { "Parameter `objectID` is required when calling `getRule`." }
200+
val requestConfig = RequestConfig(
201+
method = RequestMethod.GET,
202+
path = listOf("1", "compositions", "$compositionID", "rules", "$objectID"),
203+
)
204+
return requester.execute(
205+
requestConfig = requestConfig,
206+
requestOptions = requestOptions,
207+
)
208+
}
209+
210+
/**
211+
* Checks the status of a given task.
212+
*
213+
* Required API Key ACLs:
214+
* - editSettings
215+
* - settings
216+
* - addObject
217+
* - deleteObject
218+
* - deleteIndex
219+
* @param compositionID Unique Composition ObjectID.
220+
* @param taskID Unique task identifier.
221+
* @param requestOptions additional request configuration.
222+
*/
223+
public suspend fun getTask(compositionID: String, taskID: Long, requestOptions: RequestOptions? = null): GetTaskResponse {
224+
require(compositionID.isNotBlank()) { "Parameter `compositionID` is required when calling `getTask`." }
225+
val requestConfig = RequestConfig(
226+
method = RequestMethod.GET,
227+
path = listOf("1", "compositions", "$compositionID", "task", "$taskID"),
228+
)
229+
return requester.execute(
230+
requestConfig = requestConfig,
231+
requestOptions = requestOptions,
232+
)
233+
}
234+
235+
/**
236+
* Lists all compositions in the current Algolia application.
237+
*
238+
* Required API Key ACLs:
239+
* - editSettings
240+
* - settings
241+
* @param page Requested page of the API response. If `null`, the API response is not paginated.
242+
* @param hitsPerPage Number of hits per page. (default to 100)
243+
* @param requestOptions additional request configuration.
244+
*/
245+
public suspend fun listCompositions(page: Int? = null, hitsPerPage: Int? = null, requestOptions: RequestOptions? = null): ListCompositionsResponse {
246+
val requestConfig = RequestConfig(
247+
method = RequestMethod.GET,
248+
path = listOf("1", "compositions"),
249+
query = buildMap {
250+
page?.let { put("page", it) }
251+
hitsPerPage?.let { put("hitsPerPage", it) }
252+
},
253+
)
254+
return requester.execute(
255+
requestConfig = requestConfig,
256+
requestOptions = requestOptions,
257+
)
258+
}
259+
260+
/**
261+
* Adds, updates, or deletes compositions with a single API request.
262+
*
263+
* Required API Key ACLs:
264+
* - editSettings
265+
* @param batchParams
266+
* @param requestOptions additional request configuration.
267+
*/
268+
public suspend fun multipleBatch(batchParams: BatchParams, requestOptions: RequestOptions? = null): MultipleBatchResponse {
269+
val requestConfig = RequestConfig(
270+
method = RequestMethod.POST,
271+
path = listOf("1", "compositions", "*", "batch"),
272+
body = batchParams,
273+
)
274+
return requester.execute(
275+
requestConfig = requestConfig,
276+
requestOptions = requestOptions,
277+
)
278+
}
279+
280+
/**
281+
* Upsert a composition in the current Algolia application.
282+
*
283+
* Required API Key ACLs:
284+
* - editSettings
285+
* @param compositionID Unique Composition ObjectID.
286+
* @param composition
287+
* @param requestOptions additional request configuration.
288+
*/
289+
public suspend fun putComposition(compositionID: String, composition: Composition, requestOptions: RequestOptions? = null): TaskIDResponse {
290+
require(compositionID.isNotBlank()) { "Parameter `compositionID` is required when calling `putComposition`." }
291+
val requestConfig = RequestConfig(
292+
method = RequestMethod.PUT,
293+
path = listOf("1", "compositions", "$compositionID"),
294+
body = composition,
295+
)
296+
return requester.execute(
297+
requestConfig = requestConfig,
298+
requestOptions = requestOptions,
299+
)
300+
}
301+
302+
/**
303+
* Upsert a Composition Rule for the specified composition ID.
304+
*
305+
* Required API Key ACLs:
306+
* - editSettings
307+
* @param compositionID Unique Composition ObjectID.
308+
* @param objectID Unique identifier of a rule object.
309+
* @param compositionRule
310+
* @param requestOptions additional request configuration.
311+
*/
312+
public suspend fun putCompositionRule(compositionID: String, objectID: String, compositionRule: CompositionRule, requestOptions: RequestOptions? = null): TaskIDResponse {
313+
require(compositionID.isNotBlank()) { "Parameter `compositionID` is required when calling `putCompositionRule`." }
314+
require(objectID.isNotBlank()) { "Parameter `objectID` is required when calling `putCompositionRule`." }
315+
val requestConfig = RequestConfig(
316+
method = RequestMethod.PUT,
317+
path = listOf("1", "compositions", "$compositionID", "rules", "$objectID"),
318+
body = compositionRule,
319+
)
320+
return requester.execute(
321+
requestConfig = requestConfig,
322+
requestOptions = requestOptions,
323+
)
324+
}
325+
326+
/**
327+
* Create or update or delete multiple composition rules.
328+
*
329+
* Required API Key ACLs:
330+
* - editSettings
331+
* @param compositionID Unique Composition ObjectID.
332+
* @param rules
333+
* @param requestOptions additional request configuration.
334+
*/
335+
public suspend fun saveRules(compositionID: String, rules: CompositionRulesBatchParams, requestOptions: RequestOptions? = null): RulesMultipleBatchResponse {
336+
require(compositionID.isNotBlank()) { "Parameter `compositionID` is required when calling `saveRules`." }
337+
val requestConfig = RequestConfig(
338+
method = RequestMethod.POST,
339+
path = listOf("1", "compositions", "$compositionID", "rules", "batch"),
340+
body = rules,
341+
)
342+
return requester.execute(
343+
requestConfig = requestConfig,
344+
requestOptions = requestOptions,
345+
)
346+
}
347+
36348
/**
37349
* Runs a query on a single composition and returns matching results.
38350
*
@@ -56,6 +368,28 @@ public class CompositionClient(
56368
)
57369
}
58370

371+
/**
372+
* Searches for composition rules in your index.
373+
*
374+
* Required API Key ACLs:
375+
* - settings
376+
* @param compositionID Unique Composition ObjectID.
377+
* @param searchCompositionRulesParams
378+
* @param requestOptions additional request configuration.
379+
*/
380+
public suspend fun searchCompositionRules(compositionID: String, searchCompositionRulesParams: SearchCompositionRulesParams? = null, requestOptions: RequestOptions? = null): SearchCompositionRulesResponse {
381+
require(compositionID.isNotBlank()) { "Parameter `compositionID` is required when calling `searchCompositionRules`." }
382+
val requestConfig = RequestConfig(
383+
method = RequestMethod.POST,
384+
path = listOf("1", "compositions", "$compositionID", "rules", "search"),
385+
body = searchCompositionRulesParams,
386+
)
387+
return requester.execute(
388+
requestConfig = requestConfig,
389+
requestOptions = requestOptions,
390+
)
391+
}
392+
59393
/**
60394
* Searches for values of a specified facet attribute on the composition's main source's index. - By default, facet values are sorted by decreasing count. You can adjust this with the `sortFacetValueBy` parameter. - Searching for facet values doesn't work if you have **more than 65 searchable facets and searchable attributes combined**.
61395
*
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
/** Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT. */
2+
package com.algolia.client.model.composition
3+
4+
import kotlinx.serialization.*
5+
6+
/**
7+
* Type of Composition Batch operation.
8+
*/
9+
@Serializable
10+
public enum class Action(public val value: kotlin.String) {
11+
12+
@SerialName(value = "upsert")
13+
Upsert("upsert"),
14+
15+
@SerialName(value = "delete")
16+
Delete("delete");
17+
18+
override fun toString(): kotlin.String = value
19+
}
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
/** Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT. */
2+
package com.algolia.client.model.composition
3+
4+
import kotlinx.serialization.*
5+
6+
@Serializable
7+
public enum class AdvancedSyntaxFeatures(public val value: kotlin.String) {
8+
9+
@SerialName(value = "exactPhrase")
10+
ExactPhrase("exactPhrase"),
11+
12+
@SerialName(value = "excludeWords")
13+
ExcludeWords("excludeWords");
14+
15+
override fun toString(): kotlin.String = value
16+
}

0 commit comments

Comments
 (0)