Skip to content

Commit 6b87534

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 c7e725a commit 6b87534

Some content is hidden

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

53 files changed

+8284
-110
lines changed

algoliasearch/Clients/CompositionClient.cs

Lines changed: 1319 additions & 109 deletions
Large diffs are not rendered by default.

algoliasearch/Clients/CompositionConfiguration.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/*
22
* Composition API
33
*
4-
* The Algolia Composition API lets you run composed search requests on your Compositions. ## Client libraries Use Algolia's API clients and libraries to reliably integrate Algolia's APIs with your apps. See: [Algolia's ecosystem](https://www.algolia.com/doc/guides/getting-started/how-algolia-works/in-depth/ecosystem/) ## Base URLs The base URLs for requests to the Composition API are: - `https://{APPLICATION_ID}.algolia.net` - `https://{APPLICATION_ID}-dsn.algolia.net`. If your subscription includes a [Distributed Search Network](https://dashboard.algolia.com/infra), this ensures that requests are sent to servers closest to users. Both URLs provide high availability by distributing requests with load balancing. **All requests must use HTTPS.** ## Retry strategy To guarantee high availability, implement a retry strategy for all API requests using the URLs of your servers as fallbacks: - `https://{APPLICATION_ID}-1.algolianet.com` - `https://{APPLICATION_ID}-2.algolianet.com` - `https://{APPLICATION_ID}-3.algolianet.com` These URLs use a different DNS provider than the primary URLs. You should randomize this list to ensure an even load across the three servers. All Algolia API clients implement this retry strategy. ## Authentication To authenticate your API requests, add these headers: - `x-algolia-application-id`. Your Algolia application ID. - `x-algolia-api-key`. An API key with the necessary permissions to make the request. The required access control list (ACL) to make a request is listed in each endpoint's reference. You can find your application ID and API key in the [Algolia dashboard](https://dashboard.algolia.com/account). ## Request format Depending on the endpoint, request bodies are either JSON objects or arrays of JSON objects, ## Parameters Parameters are passed as query parameters for GET and DELETE requests, and in the request body for POST and PUT requests. Query parameters must be [URL-encoded](https://developer.mozilla.org/en-US/docs/Glossary/Percent-encoding). Non-ASCII characters must be UTF-8 encoded. Plus characters (`+`) are interpreted as spaces. Arrays as query parameters must be one of: - A comma-separated string: `attributesToRetrieve=title,description` - A URL-encoded JSON array: `attributesToRetrieve=%5B%22title%22,%22description%22%D` ## Response status and errors The Composition API returns JSON responses. Since JSON doesn't guarantee any specific ordering, don't rely on the order of attributes in the API response. Successful responses return a `2xx` status. Client errors return a `4xx` status. Server errors are indicated by a `5xx` status. Error responses have a `message` property with more information. ## Version The current version of the Composition API is version 1, as indicated by the `/1/` in each endpoint's URL.
4+
* The Algolia Composition API lets you run composed search requests on your Compositions. ## Client libraries Use Algolia's API clients and libraries to reliably integrate Algolia's APIs with your apps. See: [Algolia's ecosystem](https://www.algolia.com/doc/guides/getting-started/how-algolia-works/in-depth/ecosystem/) ## Base URLs The base URLs for requests to the Composition API are: - `https://{APPLICATION_ID}.algolia.net` - `https://{APPLICATION_ID}-dsn.algolia.net`. If your subscription includes a [Distributed Search Network](https://dashboard.algolia.com/infra), this ensures that requests are sent to servers closest to users. Both URLs provide high availability by distributing requests with load balancing. **All requests must use HTTPS.** ## Retry strategy To guarantee high availability, implement a retry strategy for all API requests using the URLs of your servers as fallbacks: - `https://{APPLICATION_ID}-1.algolianet.com` - `https://{APPLICATION_ID}-2.algolianet.com` - `https://{APPLICATION_ID}-3.algolianet.com` These URLs use a different DNS provider than the primary URLs. You should randomize this list to ensure an even load across the three servers. All Algolia API clients implement this retry strategy. ## Authentication To authenticate your API requests, add these headers: - `x-algolia-application-id`. Your Algolia application ID. - `x-algolia-api-key`. An API key with the necessary permissions to make the request. The required access control list (ACL) to make a request is listed in each endpoint's reference. You can find your application ID and API key in the [Algolia dashboard](https://dashboard.algolia.com/account). ## Request format Depending on the endpoint, request bodies are either JSON objects or arrays of JSON objects, ## Parameters Parameters are passed in the request body for POST and PUT requests. Query parameters must be [URL-encoded](https://developer.mozilla.org/en-US/docs/Glossary/Percent-encoding). Non-ASCII characters must be UTF-8 encoded. Plus characters (`+`) are interpreted as spaces. ## Response status and errors The Composition API returns JSON responses. Since JSON doesn't guarantee any specific ordering, don't rely on the order of attributes in the API response. Successful responses return a `2xx` status. Client errors return a `4xx` status. Server errors are indicated by a `5xx` status. Error responses have a `message` property with more information. ## Version The current version of the Composition API is version 1, as indicated by the `/1/` in each endpoint's URL.
55
*
66
* The version of the OpenAPI document: 1.0.0
77
* Generated by: https://github.com/openapitools/openapi-generator.git
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
//
2+
// 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.
3+
//
4+
using System;
5+
using System.Collections.Generic;
6+
using System.Linq;
7+
using System.Text;
8+
using System.Text.Json;
9+
using System.Text.Json.Serialization;
10+
using Algolia.Search.Serializer;
11+
12+
namespace Algolia.Search.Models.Composition;
13+
14+
/// <summary>
15+
/// Type of Composition Batch operation.
16+
/// </summary>
17+
/// <value>Type of Composition Batch operation.</value>
18+
[JsonConverter(typeof(Serializer.JsonStringEnumConverter<Action>))]
19+
public enum Action
20+
{
21+
/// <summary>
22+
/// Enum Upsert for value: upsert
23+
/// </summary>
24+
[JsonPropertyName("upsert")]
25+
Upsert = 1,
26+
27+
/// <summary>
28+
/// Enum Delete for value: delete
29+
/// </summary>
30+
[JsonPropertyName("delete")]
31+
Delete = 2,
32+
}
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
//
2+
// 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.
3+
//
4+
using System;
5+
using System.Collections.Generic;
6+
using System.Linq;
7+
using System.Text;
8+
using System.Text.Json;
9+
using System.Text.Json.Serialization;
10+
using Algolia.Search.Serializer;
11+
12+
namespace Algolia.Search.Models.Composition;
13+
14+
/// <summary>
15+
/// Defines advancedSyntaxFeatures
16+
/// </summary>
17+
[JsonConverter(typeof(Serializer.JsonStringEnumConverter<AdvancedSyntaxFeatures>))]
18+
public enum AdvancedSyntaxFeatures
19+
{
20+
/// <summary>
21+
/// Enum ExactPhrase for value: exactPhrase
22+
/// </summary>
23+
[JsonPropertyName("exactPhrase")]
24+
ExactPhrase = 1,
25+
26+
/// <summary>
27+
/// Enum ExcludeWords for value: excludeWords
28+
/// </summary>
29+
[JsonPropertyName("excludeWords")]
30+
ExcludeWords = 2,
31+
}
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
//
2+
// 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.
3+
//
4+
using System;
5+
using System.Collections.Generic;
6+
using System.Linq;
7+
using System.Text;
8+
using System.Text.Json;
9+
using System.Text.Json.Serialization;
10+
using Algolia.Search.Serializer;
11+
12+
namespace Algolia.Search.Models.Composition;
13+
14+
/// <summary>
15+
/// Defines alternativesAsExact
16+
/// </summary>
17+
[JsonConverter(typeof(Serializer.JsonStringEnumConverter<AlternativesAsExact>))]
18+
public enum AlternativesAsExact
19+
{
20+
/// <summary>
21+
/// Enum IgnorePlurals for value: ignorePlurals
22+
/// </summary>
23+
[JsonPropertyName("ignorePlurals")]
24+
IgnorePlurals = 1,
25+
26+
/// <summary>
27+
/// Enum SingleWordSynonym for value: singleWordSynonym
28+
/// </summary>
29+
[JsonPropertyName("singleWordSynonym")]
30+
SingleWordSynonym = 2,
31+
32+
/// <summary>
33+
/// Enum MultiWordsSynonym for value: multiWordsSynonym
34+
/// </summary>
35+
[JsonPropertyName("multiWordsSynonym")]
36+
MultiWordsSynonym = 3,
37+
38+
/// <summary>
39+
/// Enum IgnoreConjugations for value: ignoreConjugations
40+
/// </summary>
41+
[JsonPropertyName("ignoreConjugations")]
42+
IgnoreConjugations = 4,
43+
}
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
//
2+
// 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.
3+
//
4+
using System;
5+
using System.Collections.Generic;
6+
using System.Linq;
7+
using System.Text;
8+
using System.Text.Json;
9+
using System.Text.Json.Serialization;
10+
using Algolia.Search.Serializer;
11+
12+
namespace Algolia.Search.Models.Composition;
13+
14+
/// <summary>
15+
/// Which part of the search query the pattern should match: - `startsWith`. The pattern must match the beginning of the query. - `endsWith`. The pattern must match the end of the query. - `is`. The pattern must match the query exactly. - `contains`. The pattern must match anywhere in the query. Empty queries are only allowed as patterns with `anchoring: is`.
16+
/// </summary>
17+
/// <value>Which part of the search query the pattern should match: - `startsWith`. The pattern must match the beginning of the query. - `endsWith`. The pattern must match the end of the query. - `is`. The pattern must match the query exactly. - `contains`. The pattern must match anywhere in the query. Empty queries are only allowed as patterns with `anchoring: is`. </value>
18+
[JsonConverter(typeof(Serializer.JsonStringEnumConverter<Anchoring>))]
19+
public enum Anchoring
20+
{
21+
/// <summary>
22+
/// Enum Is for value: is
23+
/// </summary>
24+
[JsonPropertyName("is")]
25+
Is = 1,
26+
27+
/// <summary>
28+
/// Enum StartsWith for value: startsWith
29+
/// </summary>
30+
[JsonPropertyName("startsWith")]
31+
StartsWith = 2,
32+
33+
/// <summary>
34+
/// Enum EndsWith for value: endsWith
35+
/// </summary>
36+
[JsonPropertyName("endsWith")]
37+
EndsWith = 3,
38+
39+
/// <summary>
40+
/// Enum Contains for value: contains
41+
/// </summary>
42+
[JsonPropertyName("contains")]
43+
Contains = 4,
44+
}

0 commit comments

Comments
 (0)