@graphcommerce/algolia-recommend 9.1.0-canary.26 → 9.1.0-canary.29
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +10 -0
- package/algolia-recommend-spec.yaml +1318 -816
- package/mesh/createProductMapper.ts +5 -3
- package/mesh/getRecommendations.ts +1 -1
- package/package.json +6 -6
|
@@ -192,7 +192,7 @@ components:
|
|
|
192
192
|
required: true
|
|
193
193
|
schema:
|
|
194
194
|
type: string
|
|
195
|
-
example:
|
|
195
|
+
example: ALGOLIA_INDEX_NAME
|
|
196
196
|
Models:
|
|
197
197
|
in: path
|
|
198
198
|
name: model
|
|
@@ -223,17 +223,31 @@ components:
|
|
|
223
223
|
type: string
|
|
224
224
|
example: products
|
|
225
225
|
description: Index name (case-sensitive).
|
|
226
|
-
|
|
226
|
+
similarQuery:
|
|
227
227
|
type: string
|
|
228
|
-
description:
|
|
228
|
+
description: >
|
|
229
|
+
Keywords to be used instead of the search query to conduct a more broader search.
|
|
230
|
+
|
|
231
|
+
|
|
232
|
+
Using the `similarQuery` parameter changes other settings:
|
|
233
|
+
|
|
234
|
+
|
|
235
|
+
- `queryType` is set to `prefixNone`.
|
|
236
|
+
|
|
237
|
+
- `removeStopWords` is set to true.
|
|
238
|
+
|
|
239
|
+
- `words` is set as the first ranking criterion.
|
|
240
|
+
|
|
241
|
+
- All remaining words are treated as `optionalWords`.
|
|
242
|
+
|
|
243
|
+
|
|
244
|
+
Since the `similarQuery` is supposed to do a broad search, they usually return many results.
|
|
245
|
+
|
|
246
|
+
Combine it with `filters` to narrow down the list of results.
|
|
247
|
+
|
|
248
|
+
example: comedy drama crime Macy Buscemi
|
|
229
249
|
x-categories:
|
|
230
250
|
- Search
|
|
231
|
-
searchParamsQuery:
|
|
232
|
-
type: object
|
|
233
|
-
additionalProperties: false
|
|
234
|
-
properties:
|
|
235
|
-
query:
|
|
236
|
-
$ref: '#/components/schemas/query'
|
|
237
251
|
filters:
|
|
238
252
|
type: string
|
|
239
253
|
description: >
|
|
@@ -312,6 +326,8 @@ components:
|
|
|
312
326
|
|
|
313
327
|
- Optional filters are applied _after_ sort-by attributes.
|
|
314
328
|
|
|
329
|
+
- Optional filters are applied _before_ custom ranking attributes (in the default [ranking](https://www.algolia.com/doc/guides/managing-results/relevance-overview/in-depth/ranking-criteria/)).
|
|
330
|
+
|
|
315
331
|
- Optional filters don't work with numeric attributes.
|
|
316
332
|
|
|
317
333
|
example:
|
|
@@ -332,7 +348,9 @@ components:
|
|
|
332
348
|
**Prefer using the `filters` parameter, which supports all filter types and combinations with boolean operators.**
|
|
333
349
|
|
|
334
350
|
|
|
335
|
-
You can use numeric comparison operators: `<`, `<=`, `=`, `!=`, `>`, `>=`.
|
|
351
|
+
You can use numeric comparison operators: `<`, `<=`, `=`, `!=`, `>`, `>=`.
|
|
352
|
+
|
|
353
|
+
Comparisons are precise up to 3 decimals.
|
|
336
354
|
|
|
337
355
|
You can also provide ranges: `facet:<lower> TO <upper>`. The range includes the lower and upper boundaries.
|
|
338
356
|
|
|
@@ -374,19 +392,69 @@ components:
|
|
|
374
392
|
- type: string
|
|
375
393
|
x-categories:
|
|
376
394
|
- Filtering
|
|
377
|
-
|
|
378
|
-
type:
|
|
379
|
-
description:
|
|
380
|
-
|
|
395
|
+
sumOrFiltersScores:
|
|
396
|
+
type: boolean
|
|
397
|
+
description: >
|
|
398
|
+
Whether to sum all filter scores.
|
|
399
|
+
|
|
400
|
+
|
|
401
|
+
If true, all filter scores are summed.
|
|
402
|
+
|
|
403
|
+
Otherwise, the maximum filter score is kept.
|
|
404
|
+
|
|
405
|
+
For more information, see [filter scores](https://www.algolia.com/doc/guides/managing-results/refine-results/filtering/in-depth/filter-scoring/#accumulating-scores-with-sumorfiltersscores).
|
|
406
|
+
|
|
381
407
|
x-categories:
|
|
382
|
-
-
|
|
408
|
+
- Filtering
|
|
409
|
+
restrictSearchableAttributes:
|
|
410
|
+
type: array
|
|
411
|
+
items:
|
|
412
|
+
type: string
|
|
413
|
+
example:
|
|
414
|
+
- title
|
|
415
|
+
- author
|
|
416
|
+
description: |
|
|
417
|
+
Restricts a search to a subset of your searchable attributes.
|
|
418
|
+
Attribute names are case-sensitive.
|
|
419
|
+
x-categories:
|
|
420
|
+
- Filtering
|
|
421
|
+
facets:
|
|
422
|
+
type: array
|
|
423
|
+
items:
|
|
424
|
+
type: string
|
|
425
|
+
description: >
|
|
426
|
+
Facets for which to retrieve facet values that match the search criteria and the number of matching facet values.
|
|
427
|
+
|
|
428
|
+
|
|
429
|
+
To retrieve all facets, use the wildcard character `*`.
|
|
430
|
+
|
|
431
|
+
For more information, see [facets](https://www.algolia.com/doc/guides/managing-results/refine-results/faceting/#contextual-facet-values-and-counts).
|
|
432
|
+
|
|
433
|
+
example:
|
|
434
|
+
- '*'
|
|
435
|
+
x-categories:
|
|
436
|
+
- Faceting
|
|
437
|
+
facetingAfterDistinct:
|
|
438
|
+
type: boolean
|
|
439
|
+
description: >
|
|
440
|
+
Whether faceting should be applied after deduplication with `distinct`.
|
|
441
|
+
|
|
442
|
+
|
|
443
|
+
This leads to accurate facet counts when using faceting in combination with `distinct`.
|
|
444
|
+
|
|
445
|
+
It's usually better to use `afterDistinct` modifiers in the `attributesForFaceting` setting,
|
|
446
|
+
|
|
447
|
+
as `facetingAfterDistinct` only computes correct facet counts if all records have the same facet values for the `attributeForDistinct`.
|
|
448
|
+
|
|
449
|
+
x-categories:
|
|
450
|
+
- Faceting
|
|
383
451
|
aroundLatLng:
|
|
384
452
|
type: string
|
|
385
453
|
description: >
|
|
386
454
|
Coordinates for the center of a circle, expressed as a comma-separated string of latitude and longitude.
|
|
387
455
|
|
|
388
456
|
|
|
389
|
-
Only records included within circle around this central location are included in the results.
|
|
457
|
+
Only records included within a circle around this central location are included in the results.
|
|
390
458
|
|
|
391
459
|
The radius of the circle is determined by the `aroundRadius` and `minimumAroundRadius` settings.
|
|
392
460
|
|
|
@@ -468,7 +536,15 @@ components:
|
|
|
468
536
|
- $ref: '#/components/schemas/aroundPrecisionFromValue'
|
|
469
537
|
x-categories:
|
|
470
538
|
- Geo-Search
|
|
471
|
-
|
|
539
|
+
minimumAroundRadius:
|
|
540
|
+
type: integer
|
|
541
|
+
description: >-
|
|
542
|
+
Minimum radius (in meters) for a search around a location when `aroundRadius` isn't set.
|
|
543
|
+
|
|
544
|
+
minimum: 1
|
|
545
|
+
x-categories:
|
|
546
|
+
- Geo-Search
|
|
547
|
+
insideBoundingBoxArray:
|
|
472
548
|
type: array
|
|
473
549
|
items:
|
|
474
550
|
type: array
|
|
@@ -500,6 +576,11 @@ components:
|
|
|
500
576
|
- 1.9916
|
|
501
577
|
x-categories:
|
|
502
578
|
- Geo-Search
|
|
579
|
+
insideBoundingBox:
|
|
580
|
+
oneOf:
|
|
581
|
+
- type: string
|
|
582
|
+
- type: 'null'
|
|
583
|
+
- $ref: '#/components/schemas/insideBoundingBoxArray'
|
|
503
584
|
insidePolygon:
|
|
504
585
|
type: array
|
|
505
586
|
items:
|
|
@@ -608,6 +689,50 @@ components:
|
|
|
608
689
|
- ur
|
|
609
690
|
- uz
|
|
610
691
|
- zh
|
|
692
|
+
naturalLanguages:
|
|
693
|
+
type: array
|
|
694
|
+
items:
|
|
695
|
+
$ref: '#/components/schemas/supportedLanguage'
|
|
696
|
+
description: >
|
|
697
|
+
ISO language codes that adjust settings that are useful for processing natural language queries (as opposed to keyword searches):
|
|
698
|
+
|
|
699
|
+
|
|
700
|
+
- Sets `removeStopWords` and `ignorePlurals` to the list of provided languages.
|
|
701
|
+
|
|
702
|
+
- Sets `removeWordsIfNoResults` to `allOptional`.
|
|
703
|
+
|
|
704
|
+
- Adds a `natural_language` attribute to `ruleContexts` and `analyticsTags`.
|
|
705
|
+
|
|
706
|
+
x-categories:
|
|
707
|
+
- Languages
|
|
708
|
+
ruleContexts:
|
|
709
|
+
type: array
|
|
710
|
+
items:
|
|
711
|
+
type: string
|
|
712
|
+
description: >
|
|
713
|
+
Assigns a rule context to the search query.
|
|
714
|
+
|
|
715
|
+
|
|
716
|
+
[Rule contexts](https://www.algolia.com/doc/guides/managing-results/rules/rules-overview/how-to/customize-search-results-by-platform/#whats-a-context) are strings that you can use to trigger matching rules.
|
|
717
|
+
|
|
718
|
+
example:
|
|
719
|
+
- mobile
|
|
720
|
+
x-categories:
|
|
721
|
+
- Rules
|
|
722
|
+
personalizationImpact:
|
|
723
|
+
type: integer
|
|
724
|
+
description: >
|
|
725
|
+
Impact that Personalization should have on this search.
|
|
726
|
+
|
|
727
|
+
|
|
728
|
+
The higher this value is, the more Personalization determines the ranking compared to other factors.
|
|
729
|
+
|
|
730
|
+
For more information, see [Understanding Personalization impact](https://www.algolia.com/doc/guides/personalization/personalizing-results/in-depth/configuring-personalization/#understanding-personalization-impact).
|
|
731
|
+
|
|
732
|
+
minimum: 0
|
|
733
|
+
maximum: 100
|
|
734
|
+
x-categories:
|
|
735
|
+
- Personalization
|
|
611
736
|
userToken:
|
|
612
737
|
type: string
|
|
613
738
|
description: >
|
|
@@ -621,35 +746,58 @@ components:
|
|
|
621
746
|
example: test-user-123
|
|
622
747
|
x-categories:
|
|
623
748
|
- Personalization
|
|
624
|
-
|
|
749
|
+
getRankingInfo:
|
|
750
|
+
type: boolean
|
|
751
|
+
description: Whether the search response should include detailed ranking information.
|
|
752
|
+
x-categories:
|
|
753
|
+
- Advanced
|
|
754
|
+
synonyms:
|
|
755
|
+
type: boolean
|
|
756
|
+
description: Whether to take into account an index's synonyms for this search.
|
|
757
|
+
x-categories:
|
|
758
|
+
- Advanced
|
|
759
|
+
clickAnalytics:
|
|
760
|
+
type: boolean
|
|
761
|
+
description: >
|
|
762
|
+
Whether to include a `queryID` attribute in the response.
|
|
763
|
+
|
|
764
|
+
|
|
765
|
+
The query ID is a unique identifier for a search query and is required for tracking [click and conversion events](https://www.algolia.com/guides/sending-events/getting-started/).
|
|
766
|
+
|
|
767
|
+
x-categories:
|
|
768
|
+
- Analytics
|
|
769
|
+
analytics:
|
|
770
|
+
type: boolean
|
|
771
|
+
description: Whether this search will be included in Analytics.
|
|
772
|
+
x-categories:
|
|
773
|
+
- Analytics
|
|
774
|
+
analyticsTags:
|
|
775
|
+
type: array
|
|
776
|
+
items:
|
|
777
|
+
type: string
|
|
778
|
+
description: >-
|
|
779
|
+
Tags to apply to the query for [segmenting analytics data](https://www.algolia.com/doc/guides/search-analytics/guides/segments/).
|
|
780
|
+
|
|
781
|
+
x-categories:
|
|
782
|
+
- Analytics
|
|
783
|
+
percentileComputation:
|
|
784
|
+
type: boolean
|
|
785
|
+
description: >-
|
|
786
|
+
Whether to include this search when calculating processing-time percentiles.
|
|
787
|
+
|
|
788
|
+
x-categories:
|
|
789
|
+
- Advanced
|
|
790
|
+
enableABTest:
|
|
791
|
+
type: boolean
|
|
792
|
+
description: Whether to enable A/B testing for this search.
|
|
793
|
+
x-categories:
|
|
794
|
+
- Advanced
|
|
795
|
+
baseRecommendSearchParams:
|
|
625
796
|
type: object
|
|
626
797
|
additionalProperties: false
|
|
627
798
|
properties:
|
|
628
799
|
similarQuery:
|
|
629
|
-
|
|
630
|
-
description: >
|
|
631
|
-
Keywords to be used instead of the search query to conduct a more broader search.
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
Using the `similarQuery` parameter changes other settings:
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
- `queryType` is set to `prefixNone`.
|
|
638
|
-
|
|
639
|
-
- `removeStopWords` is set to true.
|
|
640
|
-
|
|
641
|
-
- `words` is set as the first ranking criterion.
|
|
642
|
-
|
|
643
|
-
- All remaining words are treated as `optionalWords`.
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
Since the `similarQuery` is supposed to do a broad search, they usually return many results.
|
|
647
|
-
|
|
648
|
-
Combine it with `filters` to narrow down the list of results.
|
|
649
|
-
|
|
650
|
-
example: comedy drama crime Macy Buscemi
|
|
651
|
-
x-categories:
|
|
652
|
-
- Search
|
|
800
|
+
$ref: '#/components/schemas/similarQuery'
|
|
653
801
|
filters:
|
|
654
802
|
$ref: '#/components/schemas/filters'
|
|
655
803
|
facetFilters:
|
|
@@ -661,74 +809,13 @@ components:
|
|
|
661
809
|
tagFilters:
|
|
662
810
|
$ref: '#/components/schemas/tagFilters'
|
|
663
811
|
sumOrFiltersScores:
|
|
664
|
-
|
|
665
|
-
description: >
|
|
666
|
-
Whether to sum all filter scores.
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
If true, all filter scores are summed.
|
|
670
|
-
|
|
671
|
-
Otherwise, the maximum filter score is kept.
|
|
672
|
-
|
|
673
|
-
For more information, see [filter scores](https://www.algolia.com/doc/guides/managing-results/refine-results/filtering/in-depth/filter-scoring/#accumulating-scores-with-sumorfiltersscores).
|
|
674
|
-
|
|
675
|
-
x-categories:
|
|
676
|
-
- Filtering
|
|
812
|
+
$ref: '#/components/schemas/sumOrFiltersScores'
|
|
677
813
|
restrictSearchableAttributes:
|
|
678
|
-
|
|
679
|
-
items:
|
|
680
|
-
type: string
|
|
681
|
-
example:
|
|
682
|
-
- title
|
|
683
|
-
- author
|
|
684
|
-
description: |
|
|
685
|
-
Restricts a search to a subset of your searchable attributes.
|
|
686
|
-
Attribute names are case-sensitive.
|
|
687
|
-
x-categories:
|
|
688
|
-
- Filtering
|
|
814
|
+
$ref: '#/components/schemas/restrictSearchableAttributes'
|
|
689
815
|
facets:
|
|
690
|
-
|
|
691
|
-
items:
|
|
692
|
-
type: string
|
|
693
|
-
description: >
|
|
694
|
-
Facets for which to retrieve facet values that match the search criteria and the number of matching facet values.
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
To retrieve all facets, use the wildcard character `*`.
|
|
698
|
-
|
|
699
|
-
For more information, see [facets](https://www.algolia.com/doc/guides/managing-results/refine-results/faceting/#contextual-facet-values-and-counts).
|
|
700
|
-
|
|
701
|
-
default: []
|
|
702
|
-
x-categories:
|
|
703
|
-
- Faceting
|
|
816
|
+
$ref: '#/components/schemas/facets'
|
|
704
817
|
facetingAfterDistinct:
|
|
705
|
-
|
|
706
|
-
description: >
|
|
707
|
-
Whether faceting should be applied after deduplication with `distinct`.
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
This leads to accurate facet counts when using faceting in combination with `distinct`.
|
|
711
|
-
|
|
712
|
-
It's usually better to use `afterDistinct` modifiers in the `attributesForFaceting` setting,
|
|
713
|
-
|
|
714
|
-
as `facetingAfterDistinct` only computes correct facet counts if all records have the same facet values for the `attributeForDistinct`.
|
|
715
|
-
|
|
716
|
-
x-categories:
|
|
717
|
-
- Faceting
|
|
718
|
-
page:
|
|
719
|
-
$ref: '#/components/schemas/page'
|
|
720
|
-
offset:
|
|
721
|
-
type: integer
|
|
722
|
-
description: Position of the first hit to retrieve.
|
|
723
|
-
x-categories:
|
|
724
|
-
- Pagination
|
|
725
|
-
length:
|
|
726
|
-
type: integer
|
|
727
|
-
description: Number of hits to retrieve (used in combination with `offset`).
|
|
728
|
-
minimum: 0
|
|
729
|
-
maximum: 1000
|
|
730
|
-
x-categories:
|
|
731
|
-
- Pagination
|
|
818
|
+
$ref: '#/components/schemas/facetingAfterDistinct'
|
|
732
819
|
aroundLatLng:
|
|
733
820
|
$ref: '#/components/schemas/aroundLatLng'
|
|
734
821
|
aroundLatLngViaIP:
|
|
@@ -738,122 +825,626 @@ components:
|
|
|
738
825
|
aroundPrecision:
|
|
739
826
|
$ref: '#/components/schemas/aroundPrecision'
|
|
740
827
|
minimumAroundRadius:
|
|
741
|
-
|
|
742
|
-
description: >-
|
|
743
|
-
Minimum radius (in meters) for a search around a location when `aroundRadius` isn't set.
|
|
744
|
-
|
|
745
|
-
minimum: 1
|
|
746
|
-
x-categories:
|
|
747
|
-
- Geo-Search
|
|
828
|
+
$ref: '#/components/schemas/minimumAroundRadius'
|
|
748
829
|
insideBoundingBox:
|
|
749
830
|
$ref: '#/components/schemas/insideBoundingBox'
|
|
750
831
|
insidePolygon:
|
|
751
832
|
$ref: '#/components/schemas/insidePolygon'
|
|
752
833
|
naturalLanguages:
|
|
834
|
+
$ref: '#/components/schemas/naturalLanguages'
|
|
835
|
+
ruleContexts:
|
|
836
|
+
$ref: '#/components/schemas/ruleContexts'
|
|
837
|
+
personalizationImpact:
|
|
838
|
+
$ref: '#/components/schemas/personalizationImpact'
|
|
839
|
+
userToken:
|
|
840
|
+
$ref: '#/components/schemas/userToken'
|
|
841
|
+
getRankingInfo:
|
|
842
|
+
$ref: '#/components/schemas/getRankingInfo'
|
|
843
|
+
synonyms:
|
|
844
|
+
$ref: '#/components/schemas/synonyms'
|
|
845
|
+
clickAnalytics:
|
|
846
|
+
$ref: '#/components/schemas/clickAnalytics'
|
|
847
|
+
analytics:
|
|
848
|
+
$ref: '#/components/schemas/analytics'
|
|
849
|
+
analyticsTags:
|
|
850
|
+
$ref: '#/components/schemas/analyticsTags'
|
|
851
|
+
percentileComputation:
|
|
852
|
+
$ref: '#/components/schemas/percentileComputation'
|
|
853
|
+
enableABTest:
|
|
854
|
+
$ref: '#/components/schemas/enableABTest'
|
|
855
|
+
query:
|
|
856
|
+
type: string
|
|
857
|
+
description: Search query.
|
|
858
|
+
x-categories:
|
|
859
|
+
- Search
|
|
860
|
+
searchParamsQuery:
|
|
861
|
+
type: object
|
|
862
|
+
additionalProperties: false
|
|
863
|
+
properties:
|
|
864
|
+
query:
|
|
865
|
+
$ref: '#/components/schemas/query'
|
|
866
|
+
userData:
|
|
867
|
+
example:
|
|
868
|
+
settingID: f2a7b51e3503acc6a39b3784ffb84300
|
|
869
|
+
pluginVersion: 1.6.0
|
|
870
|
+
description: |
|
|
871
|
+
An object with custom data.
|
|
872
|
+
|
|
873
|
+
You can store up to 32kB as custom data.
|
|
874
|
+
x-categories:
|
|
875
|
+
- Advanced
|
|
876
|
+
maxFacetHits:
|
|
877
|
+
type: integer
|
|
878
|
+
description: >-
|
|
879
|
+
Maximum number of facet values to return when [searching for facet values](https://www.algolia.com/doc/guides/managing-results/refine-results/faceting/#search-for-facet-values).
|
|
880
|
+
|
|
881
|
+
maximum: 100
|
|
882
|
+
x-categories:
|
|
883
|
+
- Advanced
|
|
884
|
+
baseIndexSettings:
|
|
885
|
+
type: object
|
|
886
|
+
additionalProperties: false
|
|
887
|
+
properties:
|
|
888
|
+
attributesForFaceting:
|
|
753
889
|
type: array
|
|
754
890
|
items:
|
|
755
|
-
|
|
891
|
+
type: string
|
|
892
|
+
example:
|
|
893
|
+
- author
|
|
894
|
+
- filterOnly(isbn)
|
|
895
|
+
- searchable(edition)
|
|
896
|
+
- afterDistinct(category)
|
|
897
|
+
- afterDistinct(searchable(publisher))
|
|
756
898
|
description: >
|
|
757
|
-
|
|
899
|
+
Attributes used for [faceting](https://www.algolia.com/doc/guides/managing-results/refine-results/faceting/).
|
|
900
|
+
|
|
758
901
|
|
|
902
|
+
Facets are attributes that let you categorize search results.
|
|
759
903
|
|
|
760
|
-
|
|
904
|
+
They can be used for filtering search results.
|
|
761
905
|
|
|
762
|
-
|
|
906
|
+
By default, no attribute is used for faceting.
|
|
763
907
|
|
|
764
|
-
|
|
908
|
+
Attribute names are case-sensitive.
|
|
909
|
+
|
|
910
|
+
|
|
911
|
+
**Modifiers**
|
|
912
|
+
|
|
913
|
+
|
|
914
|
+
- `filterOnly("ATTRIBUTE")`.
|
|
915
|
+
Allows the attribute to be used as a filter but doesn't evaluate the facet values.
|
|
916
|
+
|
|
917
|
+
- `searchable("ATTRIBUTE")`.
|
|
918
|
+
Allows searching for facet values.
|
|
919
|
+
|
|
920
|
+
- `afterDistinct("ATTRIBUTE")`.
|
|
921
|
+
Evaluates the facet count _after_ deduplication with `distinct`.
|
|
922
|
+
This ensures accurate facet counts.
|
|
923
|
+
You can apply this modifier to searchable facets: `afterDistinct(searchable(ATTRIBUTE))`.
|
|
765
924
|
|
|
766
925
|
x-categories:
|
|
767
|
-
-
|
|
768
|
-
|
|
926
|
+
- Faceting
|
|
927
|
+
replicas:
|
|
769
928
|
type: array
|
|
770
929
|
items:
|
|
771
930
|
type: string
|
|
931
|
+
example:
|
|
932
|
+
- virtual(prod_products_price_asc)
|
|
933
|
+
- dev_products_replica
|
|
772
934
|
description: >
|
|
773
|
-
|
|
935
|
+
Creates [replica indices](https://www.algolia.com/doc/guides/managing-results/refine-results/sorting/in-depth/replicas/).
|
|
774
936
|
|
|
775
937
|
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
938
|
+
Replicas are copies of a primary index with the same records but different settings, synonyms, or rules.
|
|
939
|
+
|
|
940
|
+
If you want to offer a different ranking or sorting of your search results, you'll use replica indices.
|
|
941
|
+
|
|
942
|
+
All index operations on a primary index are automatically forwarded to its replicas.
|
|
943
|
+
|
|
944
|
+
To add a replica index, you must provide the complete set of replicas to this parameter.
|
|
945
|
+
|
|
946
|
+
If you omit a replica from this list, the replica turns into a regular, standalone index that will no longer be synced with the primary index.
|
|
947
|
+
|
|
948
|
+
|
|
949
|
+
**Modifier**
|
|
950
|
+
|
|
951
|
+
|
|
952
|
+
- `virtual("REPLICA")`.
|
|
953
|
+
Create a virtual replica,
|
|
954
|
+
Virtual replicas don't increase the number of records and are optimized for [Relevant sorting](https://www.algolia.com/doc/guides/managing-results/refine-results/sorting/in-depth/relevant-sort/).
|
|
955
|
+
|
|
956
|
+
x-categories:
|
|
957
|
+
- Ranking
|
|
958
|
+
paginationLimitedTo:
|
|
783
959
|
type: integer
|
|
960
|
+
example: 100
|
|
961
|
+
description: >
|
|
962
|
+
Maximum number of search results that can be obtained through pagination.
|
|
963
|
+
|
|
964
|
+
|
|
965
|
+
Higher pagination limits might slow down your search.
|
|
966
|
+
|
|
967
|
+
For pagination limits above 1,000, the sorting of results beyond the 1,000th hit can't be guaranteed.
|
|
968
|
+
|
|
969
|
+
maximum: 20000
|
|
970
|
+
unretrievableAttributes:
|
|
971
|
+
type: array
|
|
972
|
+
items:
|
|
973
|
+
type: string
|
|
974
|
+
example:
|
|
975
|
+
- total_sales
|
|
976
|
+
description: >
|
|
977
|
+
Attributes that can't be retrieved at query time.
|
|
978
|
+
|
|
979
|
+
|
|
980
|
+
This can be useful if you want to use an attribute for ranking or to [restrict access](https://www.algolia.com/doc/guides/security/api-keys/how-to/user-restricted-access-to-data/),
|
|
981
|
+
|
|
982
|
+
but don't want to include it in the search results.
|
|
983
|
+
|
|
984
|
+
Attribute names are case-sensitive.
|
|
985
|
+
|
|
986
|
+
x-categories:
|
|
987
|
+
- Attributes
|
|
988
|
+
disableTypoToleranceOnWords:
|
|
989
|
+
type: array
|
|
990
|
+
items:
|
|
991
|
+
type: string
|
|
992
|
+
example:
|
|
993
|
+
- wheel
|
|
994
|
+
- 1X2BCD
|
|
995
|
+
description: >
|
|
996
|
+
Creates a list of [words which require exact matches](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/in-depth/configuring-typo-tolerance/#turn-off-typo-tolerance-for-certain-words).
|
|
997
|
+
|
|
998
|
+
This also turns off [word splitting and concatenation](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/splitting-and-concatenation/) for the specified words.
|
|
999
|
+
|
|
1000
|
+
x-categories:
|
|
1001
|
+
- Typos
|
|
1002
|
+
attributesToTransliterate:
|
|
1003
|
+
description: >
|
|
1004
|
+
Attributes, for which you want to support [Japanese transliteration](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/language-specific-configurations/#japanese-transliteration-and-type-ahead).
|
|
1005
|
+
|
|
1006
|
+
|
|
1007
|
+
Transliteration supports searching in any of the Japanese writing systems.
|
|
1008
|
+
|
|
1009
|
+
To support transliteration, you must set the indexing language to Japanese.
|
|
1010
|
+
|
|
1011
|
+
Attribute names are case-sensitive.
|
|
1012
|
+
|
|
1013
|
+
type: array
|
|
1014
|
+
items:
|
|
1015
|
+
type: string
|
|
1016
|
+
example:
|
|
1017
|
+
- name
|
|
1018
|
+
- description
|
|
1019
|
+
x-categories:
|
|
1020
|
+
- Languages
|
|
1021
|
+
camelCaseAttributes:
|
|
1022
|
+
type: array
|
|
1023
|
+
items:
|
|
1024
|
+
type: string
|
|
1025
|
+
example:
|
|
1026
|
+
- description
|
|
1027
|
+
description: >
|
|
1028
|
+
Attributes for which to split [camel case](https://wikipedia.org/wiki/Camel_case) words.
|
|
1029
|
+
|
|
1030
|
+
Attribute names are case-sensitive.
|
|
1031
|
+
|
|
1032
|
+
x-categories:
|
|
1033
|
+
- Languages
|
|
1034
|
+
decompoundedAttributes:
|
|
1035
|
+
type: object
|
|
1036
|
+
example:
|
|
1037
|
+
de:
|
|
1038
|
+
- name
|
|
1039
|
+
description: >
|
|
1040
|
+
Searchable attributes to which Algolia should apply [word segmentation](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/how-to/customize-segmentation/) (decompounding).
|
|
1041
|
+
|
|
1042
|
+
Attribute names are case-sensitive.
|
|
1043
|
+
|
|
1044
|
+
|
|
1045
|
+
Compound words are formed by combining two or more individual words,
|
|
1046
|
+
|
|
1047
|
+
and are particularly prevalent in Germanic languages—for example, "firefighter".
|
|
1048
|
+
|
|
1049
|
+
With decompounding, the individual components are indexed separately.
|
|
1050
|
+
|
|
1051
|
+
|
|
1052
|
+
You can specify different lists for different languages.
|
|
1053
|
+
|
|
1054
|
+
Decompounding is supported for these languages:
|
|
1055
|
+
|
|
1056
|
+
Dutch (`nl`), German (`de`), Finnish (`fi`), Danish (`da`), Swedish (`sv`), and Norwegian (`no`).
|
|
1057
|
+
|
|
1058
|
+
Decompounding doesn't work for words with [non-spacing mark Unicode characters](https://www.charactercodes.net/category/non-spacing_mark).
|
|
1059
|
+
|
|
1060
|
+
For example, `Gartenstühle` won't be decompounded if the `ü` consists of `u` (U+0075) and `◌̈` (U+0308).
|
|
1061
|
+
|
|
1062
|
+
x-categories:
|
|
1063
|
+
- Languages
|
|
1064
|
+
indexLanguages:
|
|
1065
|
+
type: array
|
|
1066
|
+
items:
|
|
1067
|
+
$ref: '#/components/schemas/supportedLanguage'
|
|
1068
|
+
example:
|
|
1069
|
+
- ja
|
|
784
1070
|
description: >
|
|
785
|
-
|
|
1071
|
+
Languages for language-specific processing steps, such as word detection and dictionary settings.
|
|
1072
|
+
|
|
1073
|
+
|
|
1074
|
+
**You should always specify an indexing language.**
|
|
1075
|
+
|
|
1076
|
+
If you don't specify an indexing language, the search engine uses all [supported languages](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/supported-languages/),
|
|
1077
|
+
|
|
1078
|
+
or the languages you specified with the `ignorePlurals` or `removeStopWords` parameters.
|
|
1079
|
+
|
|
1080
|
+
This can lead to unexpected search results.
|
|
786
1081
|
|
|
1082
|
+
For more information, see [Language-specific configuration](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/language-specific-configurations/).
|
|
1083
|
+
|
|
1084
|
+
x-categories:
|
|
1085
|
+
- Languages
|
|
1086
|
+
disablePrefixOnAttributes:
|
|
1087
|
+
type: array
|
|
1088
|
+
items:
|
|
1089
|
+
type: string
|
|
1090
|
+
example:
|
|
1091
|
+
- sku
|
|
1092
|
+
description: >
|
|
1093
|
+
Searchable attributes for which you want to turn off [prefix matching](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/override-search-engine-defaults/#adjusting-prefix-search).
|
|
787
1094
|
|
|
788
|
-
|
|
1095
|
+
Attribute names are case-sensitive.
|
|
1096
|
+
|
|
1097
|
+
x-categories:
|
|
1098
|
+
- Query strategy
|
|
1099
|
+
allowCompressionOfIntegerArray:
|
|
1100
|
+
type: boolean
|
|
1101
|
+
description: >
|
|
1102
|
+
Whether arrays with exclusively non-negative integers should be compressed for better performance.
|
|
789
1103
|
|
|
790
|
-
|
|
1104
|
+
If true, the compressed arrays may be reordered.
|
|
1105
|
+
|
|
1106
|
+
x-categories:
|
|
1107
|
+
- Performance
|
|
1108
|
+
numericAttributesForFiltering:
|
|
1109
|
+
type: array
|
|
1110
|
+
items:
|
|
1111
|
+
type: string
|
|
1112
|
+
description: >
|
|
1113
|
+
Numeric attributes that can be used as [numerical filters](https://www.algolia.com/doc/guides/managing-results/rules/detecting-intent/how-to/applying-a-custom-filter-for-a-specific-query/#numerical-filters).
|
|
1114
|
+
|
|
1115
|
+
Attribute names are case-sensitive.
|
|
1116
|
+
|
|
1117
|
+
|
|
1118
|
+
By default, all numeric attributes are available as numerical filters.
|
|
1119
|
+
|
|
1120
|
+
For faster indexing, reduce the number of numeric attributes.
|
|
1121
|
+
|
|
1122
|
+
|
|
1123
|
+
To turn off filtering for all numeric attributes, specify an attribute that doesn't exist in your index, such as `NO_NUMERIC_FILTERING`.
|
|
1124
|
+
|
|
1125
|
+
|
|
1126
|
+
**Modifier**
|
|
1127
|
+
|
|
1128
|
+
|
|
1129
|
+
- `equalOnly("ATTRIBUTE")`.
|
|
1130
|
+
Support only filtering based on equality comparisons `=` and `!=`.
|
|
1131
|
+
|
|
1132
|
+
example:
|
|
1133
|
+
- equalOnly(quantity)
|
|
1134
|
+
- popularity
|
|
1135
|
+
x-categories:
|
|
1136
|
+
- Performance
|
|
1137
|
+
separatorsToIndex:
|
|
1138
|
+
type: string
|
|
1139
|
+
example: +#
|
|
1140
|
+
description: >
|
|
1141
|
+
Control which non-alphanumeric characters are indexed.
|
|
1142
|
+
|
|
1143
|
+
|
|
1144
|
+
By default, Algolia ignores [non-alphanumeric characters](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/how-to/how-to-search-in-hyphenated-attributes/#handling-non-alphanumeric-characters) like hyphen (`-`), plus (`+`), and parentheses (`(`,`)`).
|
|
1145
|
+
|
|
1146
|
+
To include such characters, define them with `separatorsToIndex`.
|
|
1147
|
+
|
|
1148
|
+
|
|
1149
|
+
Separators are all non-letter characters except spaces and currency characters, such as $€£¥.
|
|
1150
|
+
|
|
1151
|
+
|
|
1152
|
+
With `separatorsToIndex`, Algolia treats separator characters as separate words.
|
|
1153
|
+
|
|
1154
|
+
For example, in a search for "Disney+", Algolia considers "Disney" and "+" as two separate words.
|
|
1155
|
+
|
|
1156
|
+
x-categories:
|
|
1157
|
+
- Typos
|
|
1158
|
+
searchableAttributes:
|
|
1159
|
+
type: array
|
|
1160
|
+
items:
|
|
1161
|
+
type: string
|
|
1162
|
+
example:
|
|
1163
|
+
- title,alternative_title
|
|
1164
|
+
- author
|
|
1165
|
+
- unordered(text)
|
|
1166
|
+
- emails.personal
|
|
1167
|
+
description: >
|
|
1168
|
+
Attributes used for searching. Attribute names are case-sensitive.
|
|
1169
|
+
|
|
1170
|
+
|
|
1171
|
+
By default, all attributes are searchable and the [Attribute](https://www.algolia.com/doc/guides/managing-results/relevance-overview/in-depth/ranking-criteria/#attribute) ranking criterion is turned off.
|
|
1172
|
+
|
|
1173
|
+
With a non-empty list, Algolia only returns results with matches in the selected attributes.
|
|
1174
|
+
|
|
1175
|
+
In addition, the Attribute ranking criterion is turned on: matches in attributes that are higher in the list of `searchableAttributes` rank first.
|
|
1176
|
+
|
|
1177
|
+
To make matches in two attributes rank equally, include them in a comma-separated string, such as `"title,alternate_title"`.
|
|
1178
|
+
|
|
1179
|
+
Attributes with the same priority are always unordered.
|
|
1180
|
+
|
|
1181
|
+
|
|
1182
|
+
For more information, see [Searchable attributes](https://www.algolia.com/doc/guides/sending-and-managing-data/prepare-your-data/how-to/setting-searchable-attributes/).
|
|
1183
|
+
|
|
1184
|
+
|
|
1185
|
+
**Modifier**
|
|
1186
|
+
|
|
1187
|
+
|
|
1188
|
+
- `unordered("ATTRIBUTE")`.
|
|
1189
|
+
Ignore the position of a match within the attribute.
|
|
1190
|
+
|
|
1191
|
+
Without a modifier, matches at the beginning of an attribute rank higher than matches at the end.
|
|
1192
|
+
|
|
1193
|
+
x-categories:
|
|
1194
|
+
- Attributes
|
|
1195
|
+
userData:
|
|
1196
|
+
$ref: '#/components/schemas/userData'
|
|
1197
|
+
customNormalization:
|
|
1198
|
+
description: >
|
|
1199
|
+
Characters and their normalized replacements.
|
|
1200
|
+
|
|
1201
|
+
This overrides Algolia's default [normalization](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/normalization/).
|
|
1202
|
+
|
|
1203
|
+
type: object
|
|
1204
|
+
additionalProperties:
|
|
1205
|
+
type: object
|
|
1206
|
+
additionalProperties:
|
|
1207
|
+
type: string
|
|
1208
|
+
x-categories:
|
|
1209
|
+
- Languages
|
|
1210
|
+
attributeForDistinct:
|
|
1211
|
+
description: >
|
|
1212
|
+
Attribute that should be used to establish groups of results.
|
|
1213
|
+
|
|
1214
|
+
Attribute names are case-sensitive.
|
|
1215
|
+
|
|
1216
|
+
|
|
1217
|
+
All records with the same value for this attribute are considered a group.
|
|
1218
|
+
|
|
1219
|
+
You can combine `attributeForDistinct` with the `distinct` search parameter to control
|
|
1220
|
+
|
|
1221
|
+
how many items per group are included in the search results.
|
|
1222
|
+
|
|
1223
|
+
|
|
1224
|
+
If you want to use the same attribute also for faceting, use the `afterDistinct` modifier of the `attributesForFaceting` setting.
|
|
1225
|
+
|
|
1226
|
+
This applies faceting _after_ deduplication, which will result in accurate facet counts.
|
|
1227
|
+
|
|
1228
|
+
example: url
|
|
1229
|
+
type: string
|
|
1230
|
+
maxFacetHits:
|
|
1231
|
+
$ref: '#/components/schemas/maxFacetHits'
|
|
1232
|
+
keepDiacriticsOnCharacters:
|
|
1233
|
+
type: string
|
|
1234
|
+
example: øé
|
|
1235
|
+
description: |
|
|
1236
|
+
Characters for which diacritics should be preserved.
|
|
1237
|
+
|
|
1238
|
+
By default, Algolia removes diacritics from letters.
|
|
1239
|
+
For example, `é` becomes `e`. If this causes issues in your search,
|
|
1240
|
+
you can specify characters that should keep their diacritics.
|
|
1241
|
+
x-categories:
|
|
1242
|
+
- Languages
|
|
1243
|
+
customRanking:
|
|
1244
|
+
type: array
|
|
1245
|
+
items:
|
|
1246
|
+
type: string
|
|
1247
|
+
example:
|
|
1248
|
+
- desc(popularity)
|
|
1249
|
+
- asc(price)
|
|
1250
|
+
description: >
|
|
1251
|
+
Attributes to use as [custom ranking](https://www.algolia.com/doc/guides/managing-results/must-do/custom-ranking/).
|
|
1252
|
+
|
|
1253
|
+
Attribute names are case-sensitive.
|
|
1254
|
+
|
|
1255
|
+
|
|
1256
|
+
The custom ranking attributes decide which items are shown first if the other ranking criteria are equal.
|
|
1257
|
+
|
|
1258
|
+
|
|
1259
|
+
Records with missing values for your selected custom ranking attributes are always sorted last.
|
|
1260
|
+
|
|
1261
|
+
Boolean attributes are sorted based on their alphabetical order.
|
|
1262
|
+
|
|
1263
|
+
|
|
1264
|
+
**Modifiers**
|
|
1265
|
+
|
|
1266
|
+
|
|
1267
|
+
- `asc("ATTRIBUTE")`.
|
|
1268
|
+
Sort the index by the values of an attribute, in ascending order.
|
|
1269
|
+
|
|
1270
|
+
- `desc("ATTRIBUTE")`.
|
|
1271
|
+
Sort the index by the values of an attribute, in descending order.
|
|
1272
|
+
|
|
1273
|
+
If you use two or more custom ranking attributes,
|
|
1274
|
+
|
|
1275
|
+
[reduce the precision](https://www.algolia.com/doc/guides/managing-results/must-do/custom-ranking/how-to/controlling-custom-ranking-metrics-precision/) of your first attributes,
|
|
1276
|
+
|
|
1277
|
+
or the other attributes will never be applied.
|
|
1278
|
+
|
|
1279
|
+
x-categories:
|
|
1280
|
+
- Ranking
|
|
1281
|
+
attributesToRetrieve:
|
|
1282
|
+
type: array
|
|
1283
|
+
items:
|
|
1284
|
+
type: string
|
|
1285
|
+
example:
|
|
1286
|
+
- author
|
|
1287
|
+
- title
|
|
1288
|
+
- content
|
|
1289
|
+
description: >
|
|
1290
|
+
Attributes to include in the API response.
|
|
1291
|
+
|
|
1292
|
+
|
|
1293
|
+
To reduce the size of your response, you can retrieve only some of the attributes.
|
|
1294
|
+
|
|
1295
|
+
Attribute names are case-sensitive.
|
|
1296
|
+
|
|
1297
|
+
|
|
1298
|
+
- `*` retrieves all attributes, except attributes included in the `customRanking` and `unretrievableAttributes` settings.
|
|
1299
|
+
|
|
1300
|
+
- To retrieve all attributes except a specific one, prefix the attribute with a dash and combine it with the `*`: `["*", "-ATTRIBUTE"]`.
|
|
1301
|
+
|
|
1302
|
+
- The `objectID` attribute is always included.
|
|
1303
|
+
|
|
1304
|
+
x-categories:
|
|
1305
|
+
- Attributes
|
|
1306
|
+
ranking:
|
|
1307
|
+
type: array
|
|
1308
|
+
items:
|
|
1309
|
+
type: string
|
|
1310
|
+
description: >
|
|
1311
|
+
Determines the order in which Algolia returns your results.
|
|
1312
|
+
|
|
1313
|
+
|
|
1314
|
+
By default, each entry corresponds to a [ranking criteria](https://www.algolia.com/doc/guides/managing-results/relevance-overview/in-depth/ranking-criteria/).
|
|
1315
|
+
|
|
1316
|
+
The tie-breaking algorithm sequentially applies each criterion in the order they're specified.
|
|
1317
|
+
|
|
1318
|
+
If you configure a replica index for [sorting by an attribute](https://www.algolia.com/doc/guides/managing-results/refine-results/sorting/how-to/sort-by-attribute/),
|
|
1319
|
+
|
|
1320
|
+
you put the sorting attribute at the top of the list.
|
|
1321
|
+
|
|
1322
|
+
|
|
1323
|
+
**Modifiers**
|
|
1324
|
+
|
|
1325
|
+
|
|
1326
|
+
- `asc("ATTRIBUTE")`.
|
|
1327
|
+
Sort the index by the values of an attribute, in ascending order.
|
|
1328
|
+
- `desc("ATTRIBUTE")`.
|
|
1329
|
+
Sort the index by the values of an attribute, in descending order.
|
|
1330
|
+
|
|
1331
|
+
Before you modify the default setting,
|
|
1332
|
+
|
|
1333
|
+
you should test your changes in the dashboard,
|
|
1334
|
+
|
|
1335
|
+
and by [A/B testing](https://www.algolia.com/doc/guides/ab-testing/what-is-ab-testing/).
|
|
1336
|
+
|
|
1337
|
+
x-categories:
|
|
1338
|
+
- Ranking
|
|
1339
|
+
relevancyStrictness:
|
|
1340
|
+
type: integer
|
|
1341
|
+
example: 90
|
|
1342
|
+
description: >
|
|
1343
|
+
Relevancy threshold below which less relevant results aren't included in the results.
|
|
1344
|
+
|
|
1345
|
+
|
|
1346
|
+
You can only set `relevancyStrictness` on [virtual replica indices](https://www.algolia.com/doc/guides/managing-results/refine-results/sorting/in-depth/replicas/#what-are-virtual-replicas).
|
|
1347
|
+
|
|
1348
|
+
Use this setting to strike a balance between the relevance and number of returned results.
|
|
1349
|
+
|
|
1350
|
+
x-categories:
|
|
1351
|
+
- Ranking
|
|
1352
|
+
attributesToHighlight:
|
|
1353
|
+
type: array
|
|
1354
|
+
items:
|
|
1355
|
+
type: string
|
|
1356
|
+
example:
|
|
1357
|
+
- author
|
|
1358
|
+
- title
|
|
1359
|
+
- conten
|
|
1360
|
+
- content
|
|
1361
|
+
description: >
|
|
1362
|
+
Attributes to highlight.
|
|
1363
|
+
|
|
1364
|
+
|
|
1365
|
+
By default, all searchable attributes are highlighted.
|
|
1366
|
+
|
|
1367
|
+
Use `*` to highlight all attributes or use an empty array `[]` to turn off highlighting.
|
|
1368
|
+
|
|
1369
|
+
Attribute names are case-sensitive.
|
|
1370
|
+
|
|
1371
|
+
|
|
1372
|
+
With highlighting, strings that match the search query are surrounded by HTML tags defined by `highlightPreTag` and `highlightPostTag`.
|
|
1373
|
+
|
|
1374
|
+
You can use this to visually highlight matching parts of a search query in your UI.
|
|
1375
|
+
|
|
1376
|
+
|
|
1377
|
+
For more information, see [Highlighting and snippeting](https://www.algolia.com/doc/guides/building-search-ui/ui-and-ux-patterns/highlighting-snippeting/js/).
|
|
1378
|
+
|
|
1379
|
+
x-categories:
|
|
1380
|
+
- Highlighting and Snippeting
|
|
1381
|
+
attributesToSnippet:
|
|
1382
|
+
type: array
|
|
1383
|
+
items:
|
|
1384
|
+
type: string
|
|
1385
|
+
example:
|
|
1386
|
+
- content:80
|
|
1387
|
+
- description
|
|
1388
|
+
description: >
|
|
1389
|
+
Attributes for which to enable snippets.
|
|
1390
|
+
|
|
1391
|
+
Attribute names are case-sensitive.
|
|
1392
|
+
|
|
1393
|
+
|
|
1394
|
+
Snippets provide additional context to matched words.
|
|
1395
|
+
|
|
1396
|
+
If you enable snippets, they include 10 words, including the matched word.
|
|
1397
|
+
|
|
1398
|
+
The matched word will also be wrapped by HTML tags for highlighting.
|
|
1399
|
+
|
|
1400
|
+
You can adjust the number of words with the following notation: `ATTRIBUTE:NUMBER`,
|
|
1401
|
+
|
|
1402
|
+
where `NUMBER` is the number of words to be extracted.
|
|
791
1403
|
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
getRankingInfo:
|
|
799
|
-
type: boolean
|
|
800
|
-
description: >-
|
|
801
|
-
Whether the search response should include detailed ranking information.
|
|
1404
|
+
x-categories:
|
|
1405
|
+
- Highlighting and Snippeting
|
|
1406
|
+
highlightPreTag:
|
|
1407
|
+
type: string
|
|
1408
|
+
description: >-
|
|
1409
|
+
HTML tag to insert before the highlighted parts in all highlighted results and snippets.
|
|
802
1410
|
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
- Advanced
|
|
810
|
-
clickAnalytics:
|
|
811
|
-
type: boolean
|
|
812
|
-
description: >
|
|
813
|
-
Whether to include a `queryID` attribute in the response.
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
The query ID is a unique identifier for a search query and is required for tracking [click and conversion events](https://www.algolia.com/guides/sending-events/getting-started/).
|
|
1411
|
+
x-categories:
|
|
1412
|
+
- Highlighting and Snippeting
|
|
1413
|
+
highlightPostTag:
|
|
1414
|
+
type: string
|
|
1415
|
+
description: >-
|
|
1416
|
+
HTML tag to insert after the highlighted parts in all highlighted results and snippets.
|
|
817
1417
|
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
1418
|
+
x-categories:
|
|
1419
|
+
- Highlighting and Snippeting
|
|
1420
|
+
snippetEllipsisText:
|
|
1421
|
+
type: string
|
|
1422
|
+
description: String used as an ellipsis indicator when a snippet is truncated.
|
|
1423
|
+
x-categories:
|
|
1424
|
+
- Highlighting and Snippeting
|
|
1425
|
+
restrictHighlightAndSnippetArrays:
|
|
1426
|
+
type: boolean
|
|
1427
|
+
description: >
|
|
1428
|
+
Whether to restrict highlighting and snippeting to items that at least partially matched the search query.
|
|
1429
|
+
|
|
1430
|
+
By default, all items are highlighted and snippeted.
|
|
831
1431
|
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
1432
|
+
x-categories:
|
|
1433
|
+
- Highlighting and Snippeting
|
|
1434
|
+
minWordSizefor1Typo:
|
|
1435
|
+
type: integer
|
|
1436
|
+
description: >-
|
|
1437
|
+
Minimum number of characters a word in the search query must contain to accept matches with [one typo](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/in-depth/configuring-typo-tolerance/#configuring-word-length-for-typos).
|
|
838
1438
|
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
type: boolean
|
|
843
|
-
description: Whether to enable A/B testing for this search.
|
|
844
|
-
x-categories:
|
|
845
|
-
- Advanced
|
|
846
|
-
baseSearchParams:
|
|
847
|
-
allOf:
|
|
848
|
-
- $ref: '#/components/schemas/searchParamsQuery'
|
|
849
|
-
- $ref: '#/components/schemas/baseSearchParamsWithoutQuery'
|
|
850
|
-
hitsPerPage:
|
|
1439
|
+
x-categories:
|
|
1440
|
+
- Typos
|
|
1441
|
+
minWordSizefor2Typos:
|
|
851
1442
|
type: integer
|
|
852
|
-
description:
|
|
853
|
-
|
|
854
|
-
|
|
1443
|
+
description: >-
|
|
1444
|
+
Minimum number of characters a word in the search query must contain to accept matches with [two typos](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/in-depth/configuring-typo-tolerance/#configuring-word-length-for-typos).
|
|
1445
|
+
|
|
855
1446
|
x-categories:
|
|
856
|
-
-
|
|
1447
|
+
- Typos
|
|
857
1448
|
typoToleranceEnum:
|
|
858
1449
|
type: string
|
|
859
1450
|
title: typo tolerance
|
|
@@ -871,7 +1462,7 @@ components:
|
|
|
871
1462
|
Whether [typo tolerance](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/) is enabled and how it is applied.
|
|
872
1463
|
|
|
873
1464
|
|
|
874
|
-
If typo tolerance is true, `min`, or `strict`, [word splitting and
|
|
1465
|
+
If typo tolerance is true, `min`, or `strict`, [word splitting and concatenation](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/splitting-and-concatenation/) are also active.
|
|
875
1466
|
|
|
876
1467
|
oneOf:
|
|
877
1468
|
- type: boolean
|
|
@@ -882,6 +1473,39 @@ components:
|
|
|
882
1473
|
- $ref: '#/components/schemas/typoToleranceEnum'
|
|
883
1474
|
x-categories:
|
|
884
1475
|
- Typos
|
|
1476
|
+
allowTyposOnNumericTokens:
|
|
1477
|
+
type: boolean
|
|
1478
|
+
description: |
|
|
1479
|
+
Whether to allow typos on numbers in the search query.
|
|
1480
|
+
|
|
1481
|
+
Turn off this setting to reduce the number of irrelevant matches
|
|
1482
|
+
when searching in large sets of similar numbers.
|
|
1483
|
+
x-categories:
|
|
1484
|
+
- Typos
|
|
1485
|
+
disableTypoToleranceOnAttributes:
|
|
1486
|
+
type: array
|
|
1487
|
+
items:
|
|
1488
|
+
type: string
|
|
1489
|
+
example:
|
|
1490
|
+
- sku
|
|
1491
|
+
description: >
|
|
1492
|
+
Attributes for which you want to turn off [typo tolerance](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/).
|
|
1493
|
+
|
|
1494
|
+
Attribute names are case-sensitive.
|
|
1495
|
+
|
|
1496
|
+
|
|
1497
|
+
Returning only exact matches can help when:
|
|
1498
|
+
|
|
1499
|
+
|
|
1500
|
+
- [Searching in hyphenated attributes](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/how-to/how-to-search-in-hyphenated-attributes/).
|
|
1501
|
+
|
|
1502
|
+
- Reducing the number of matches when you have too many.
|
|
1503
|
+
This can happen with attributes that are long blocks of text, such as product descriptions.
|
|
1504
|
+
|
|
1505
|
+
Consider alternatives such as `disableTypoToleranceOnWords` or adding synonyms if your attributes have intentional unusual spellings that might look like typos.
|
|
1506
|
+
|
|
1507
|
+
x-categories:
|
|
1508
|
+
- Typos
|
|
885
1509
|
booleanString:
|
|
886
1510
|
type: string
|
|
887
1511
|
enum:
|
|
@@ -942,6 +1566,61 @@ components:
|
|
|
942
1566
|
|
|
943
1567
|
x-categories:
|
|
944
1568
|
- Languages
|
|
1569
|
+
queryLanguages:
|
|
1570
|
+
type: array
|
|
1571
|
+
items:
|
|
1572
|
+
$ref: '#/components/schemas/supportedLanguage'
|
|
1573
|
+
example:
|
|
1574
|
+
- es
|
|
1575
|
+
description: >
|
|
1576
|
+
Languages for language-specific query processing steps such as plurals, stop-word removal, and word-detection dictionaries.
|
|
1577
|
+
|
|
1578
|
+
|
|
1579
|
+
This setting sets a default list of languages used by the `removeStopWords` and `ignorePlurals` settings.
|
|
1580
|
+
|
|
1581
|
+
This setting also sets a dictionary for word detection in the logogram-based [CJK](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/normalization/#normalization-for-logogram-based-languages-cjk) languages.
|
|
1582
|
+
|
|
1583
|
+
To support this, you must place the CJK language **first**.
|
|
1584
|
+
|
|
1585
|
+
|
|
1586
|
+
**You should always specify a query language.**
|
|
1587
|
+
|
|
1588
|
+
If you don't specify an indexing language, the search engine uses all [supported languages](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/supported-languages/),
|
|
1589
|
+
|
|
1590
|
+
or the languages you specified with the `ignorePlurals` or `removeStopWords` parameters.
|
|
1591
|
+
|
|
1592
|
+
This can lead to unexpected search results.
|
|
1593
|
+
|
|
1594
|
+
For more information, see [Language-specific configuration](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/language-specific-configurations/).
|
|
1595
|
+
|
|
1596
|
+
x-categories:
|
|
1597
|
+
- Languages
|
|
1598
|
+
decompoundQuery:
|
|
1599
|
+
type: boolean
|
|
1600
|
+
description: >
|
|
1601
|
+
Whether to split compound words in the query into their building blocks.
|
|
1602
|
+
|
|
1603
|
+
|
|
1604
|
+
For more information, see [Word segmentation](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/language-specific-configurations/#splitting-compound-words).
|
|
1605
|
+
|
|
1606
|
+
Word segmentation is supported for these languages: German, Dutch, Finnish, Swedish, and Norwegian.
|
|
1607
|
+
|
|
1608
|
+
Decompounding doesn't work for words with [non-spacing mark Unicode characters](https://www.charactercodes.net/category/non-spacing_mark).
|
|
1609
|
+
|
|
1610
|
+
For example, `Gartenstühle` won't be decompounded if the `ü` consists of `u` (U+0075) and `◌̈` (U+0308).
|
|
1611
|
+
|
|
1612
|
+
x-categories:
|
|
1613
|
+
- Languages
|
|
1614
|
+
enableRules:
|
|
1615
|
+
type: boolean
|
|
1616
|
+
description: Whether to enable rules.
|
|
1617
|
+
x-categories:
|
|
1618
|
+
- Rules
|
|
1619
|
+
enablePersonalization:
|
|
1620
|
+
type: boolean
|
|
1621
|
+
description: Whether to enable Personalization.
|
|
1622
|
+
x-categories:
|
|
1623
|
+
- Personalization
|
|
945
1624
|
queryType:
|
|
946
1625
|
type: string
|
|
947
1626
|
enum:
|
|
@@ -952,7 +1631,7 @@ components:
|
|
|
952
1631
|
Determines if and how query words are interpreted as prefixes.
|
|
953
1632
|
|
|
954
1633
|
|
|
955
|
-
By default, only the last query word is treated as prefix (`prefixLast`).
|
|
1634
|
+
By default, only the last query word is treated as a prefix (`prefixLast`).
|
|
956
1635
|
|
|
957
1636
|
To turn off prefix search, use `prefixNone`.
|
|
958
1637
|
|
|
@@ -997,35 +1676,82 @@ components:
|
|
|
997
1676
|
|
|
998
1677
|
x-categories:
|
|
999
1678
|
- Query strategy
|
|
1000
|
-
|
|
1001
|
-
type:
|
|
1002
|
-
enum:
|
|
1003
|
-
- neuralSearch
|
|
1004
|
-
- keywordSearch
|
|
1679
|
+
advancedSyntax:
|
|
1680
|
+
type: boolean
|
|
1005
1681
|
description: >
|
|
1006
|
-
|
|
1682
|
+
Whether to support phrase matching and excluding words from search queries.
|
|
1007
1683
|
|
|
1008
1684
|
|
|
1009
|
-
|
|
1685
|
+
Use the `advancedSyntaxFeatures` parameter to control which feature is supported.
|
|
1010
1686
|
|
|
1011
1687
|
x-categories:
|
|
1012
1688
|
- Query strategy
|
|
1013
|
-
|
|
1014
|
-
type:
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
description: |
|
|
1023
|
-
Indices from which to collect click and conversion events.
|
|
1689
|
+
optionalWordsArray:
|
|
1690
|
+
type: array
|
|
1691
|
+
items:
|
|
1692
|
+
type: string
|
|
1693
|
+
example:
|
|
1694
|
+
- blue
|
|
1695
|
+
- iphone case
|
|
1696
|
+
description: >-
|
|
1697
|
+
List of [optional words](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/empty-or-insufficient-results/#creating-a-list-of-optional-words).
|
|
1024
1698
|
|
|
1025
|
-
|
|
1026
|
-
|
|
1027
|
-
|
|
1028
|
-
|
|
1699
|
+
x-categories:
|
|
1700
|
+
- Query strategy
|
|
1701
|
+
optionalWords:
|
|
1702
|
+
description: >
|
|
1703
|
+
Words that should be considered optional when found in the query.
|
|
1704
|
+
|
|
1705
|
+
|
|
1706
|
+
By default, records must match all words in the search query to be included in the search results.
|
|
1707
|
+
|
|
1708
|
+
Adding optional words can help to increase the number of search results by running an additional search query that doesn't include the optional words.
|
|
1709
|
+
|
|
1710
|
+
For example, if the search query is "action video" and "video" is an optional word,
|
|
1711
|
+
|
|
1712
|
+
the search engine runs two queries. One for "action video" and one for "action".
|
|
1713
|
+
|
|
1714
|
+
Records that match all words are ranked higher.
|
|
1715
|
+
|
|
1716
|
+
|
|
1717
|
+
For a search query with 4 or more words **and** all its words are optional,
|
|
1718
|
+
|
|
1719
|
+
the number of matched words required for a record to be included in the search results increases for every 1,000 records:
|
|
1720
|
+
|
|
1721
|
+
|
|
1722
|
+
- If `optionalWords` has less than 10 words, the required number of matched words increases by 1:
|
|
1723
|
+
results 1 to 1,000 require 1 matched word, results 1,001 to 2000 need 2 matched words.
|
|
1724
|
+
- If `optionalWords` has 10 or more words, the number of required matched words increases by the number of optional words divided by 5 (rounded down).
|
|
1725
|
+
For example, with 18 optional words: results 1 to 1,000 require 1 matched word, results 1,001 to 2000 need 4 matched words.
|
|
1726
|
+
|
|
1727
|
+
For more information, see [Optional words](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/empty-or-insufficient-results/#creating-a-list-of-optional-words).
|
|
1728
|
+
|
|
1729
|
+
oneOf:
|
|
1730
|
+
- type: string
|
|
1731
|
+
- type: 'null'
|
|
1732
|
+
- $ref: '#/components/schemas/optionalWordsArray'
|
|
1733
|
+
disableExactOnAttributes:
|
|
1734
|
+
type: array
|
|
1735
|
+
items:
|
|
1736
|
+
type: string
|
|
1737
|
+
example:
|
|
1738
|
+
- description
|
|
1739
|
+
description: >
|
|
1740
|
+
Searchable attributes for which you want to [turn off the Exact ranking criterion](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/override-search-engine-defaults/in-depth/adjust-exact-settings/#turn-off-exact-for-some-attributes).
|
|
1741
|
+
|
|
1742
|
+
Attribute names are case-sensitive.
|
|
1743
|
+
|
|
1744
|
+
|
|
1745
|
+
This can be useful for attributes with long values, where the likelihood of an exact match is high,
|
|
1746
|
+
|
|
1747
|
+
such as product descriptions.
|
|
1748
|
+
|
|
1749
|
+
Turning off the Exact ranking criterion for these attributes favors exact matching on other attributes.
|
|
1750
|
+
|
|
1751
|
+
This reduces the impact of individual attributes with a lot of content on ranking.
|
|
1752
|
+
|
|
1753
|
+
x-categories:
|
|
1754
|
+
- Query strategy
|
|
1029
1755
|
exactOnSingleWordQuery:
|
|
1030
1756
|
type: string
|
|
1031
1757
|
enum:
|
|
@@ -1057,6 +1783,36 @@ components:
|
|
|
1057
1783
|
- ignorePlurals
|
|
1058
1784
|
- singleWordSynonym
|
|
1059
1785
|
- multiWordsSynonym
|
|
1786
|
+
- ignoreConjugations
|
|
1787
|
+
x-categories:
|
|
1788
|
+
- Query strategy
|
|
1789
|
+
properties-alternativesAsExact:
|
|
1790
|
+
type: array
|
|
1791
|
+
items:
|
|
1792
|
+
$ref: '#/components/schemas/alternativesAsExact'
|
|
1793
|
+
description: >
|
|
1794
|
+
Determine which plurals and synonyms should be considered an exact matches.
|
|
1795
|
+
|
|
1796
|
+
|
|
1797
|
+
By default, Algolia treats singular and plural forms of a word, and single-word synonyms, as [exact](https://www.algolia.com/doc/guides/managing-results/relevance-overview/in-depth/ranking-criteria/#exact) matches when searching.
|
|
1798
|
+
|
|
1799
|
+
For example:
|
|
1800
|
+
|
|
1801
|
+
|
|
1802
|
+
- "swimsuit" and "swimsuits" are treated the same
|
|
1803
|
+
|
|
1804
|
+
- "swimsuit" and "swimwear" are treated the same (if they are [synonyms](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/adding-synonyms/#regular-synonyms)).
|
|
1805
|
+
|
|
1806
|
+
|
|
1807
|
+
- `ignorePlurals`.
|
|
1808
|
+
Plurals and similar declensions added by the `ignorePlurals` setting are considered exact matches.
|
|
1809
|
+
|
|
1810
|
+
- `singleWordSynonym`.
|
|
1811
|
+
Single-word synonyms, such as "NY" = "NYC", are considered exact matches.
|
|
1812
|
+
|
|
1813
|
+
- `multiWordsSynonym`.
|
|
1814
|
+
Multi-word synonyms, such as "NY" = "New York", are considered exact matches.
|
|
1815
|
+
|
|
1060
1816
|
x-categories:
|
|
1061
1817
|
- Query strategy
|
|
1062
1818
|
advancedSyntaxFeatures:
|
|
@@ -1066,6 +1822,24 @@ components:
|
|
|
1066
1822
|
- excludeWords
|
|
1067
1823
|
x-categories:
|
|
1068
1824
|
- Query strategy
|
|
1825
|
+
properties-advancedSyntaxFeatures:
|
|
1826
|
+
type: array
|
|
1827
|
+
items:
|
|
1828
|
+
$ref: '#/components/schemas/advancedSyntaxFeatures'
|
|
1829
|
+
description: |
|
|
1830
|
+
Advanced search syntax features you want to support.
|
|
1831
|
+
|
|
1832
|
+
- `exactPhrase`.
|
|
1833
|
+
Phrases in quotes must match exactly.
|
|
1834
|
+
For example, `sparkly blue "iPhone case"` only returns records with the exact string "iPhone case".
|
|
1835
|
+
|
|
1836
|
+
- `excludeWords`.
|
|
1837
|
+
Query words prefixed with a `-` must not occur in a record.
|
|
1838
|
+
For example, `search -engine` matches records that contain "search" but not "engine".
|
|
1839
|
+
|
|
1840
|
+
This setting only has an effect if `advancedSyntax` is true.
|
|
1841
|
+
x-categories:
|
|
1842
|
+
- Query strategy
|
|
1069
1843
|
distinct:
|
|
1070
1844
|
description: >
|
|
1071
1845
|
Determines how many records of a group are included in the search results.
|
|
@@ -1102,12 +1876,112 @@ components:
|
|
|
1102
1876
|
default: 0
|
|
1103
1877
|
x-categories:
|
|
1104
1878
|
- Advanced
|
|
1105
|
-
|
|
1879
|
+
replaceSynonymsInHighlight:
|
|
1880
|
+
type: boolean
|
|
1881
|
+
description: >
|
|
1882
|
+
Whether to replace a highlighted word with the matched synonym.
|
|
1883
|
+
|
|
1884
|
+
|
|
1885
|
+
By default, the original words are highlighted even if a synonym matches.
|
|
1886
|
+
|
|
1887
|
+
For example, with `home` as a synonym for `house` and a search for `home`,
|
|
1888
|
+
|
|
1889
|
+
records matching either "home" or "house" are included in the search results,
|
|
1890
|
+
|
|
1891
|
+
and either "home" or "house" are highlighted.
|
|
1892
|
+
|
|
1893
|
+
|
|
1894
|
+
With `replaceSynonymsInHighlight` set to `true`, a search for `home` still matches the same records,
|
|
1895
|
+
|
|
1896
|
+
but all occurrences of "house" are replaced by "home" in the highlighted response.
|
|
1897
|
+
|
|
1898
|
+
x-categories:
|
|
1899
|
+
- Highlighting and Snippeting
|
|
1900
|
+
minProximity:
|
|
1106
1901
|
type: integer
|
|
1107
|
-
|
|
1108
|
-
|
|
1902
|
+
minimum: 1
|
|
1903
|
+
maximum: 7
|
|
1904
|
+
description: >
|
|
1905
|
+
Minimum proximity score for two matching words.
|
|
1906
|
+
|
|
1907
|
+
|
|
1908
|
+
This adjusts the [Proximity ranking criterion](https://www.algolia.com/doc/guides/managing-results/relevance-overview/in-depth/ranking-criteria/#proximity)
|
|
1909
|
+
|
|
1910
|
+
by equally scoring matches that are farther apart.
|
|
1911
|
+
|
|
1912
|
+
|
|
1913
|
+
For example, if `minProximity` is 2, neighboring matches and matches with one word between them would have the same score.
|
|
1914
|
+
|
|
1915
|
+
x-categories:
|
|
1916
|
+
- Advanced
|
|
1917
|
+
responseFields:
|
|
1918
|
+
type: array
|
|
1919
|
+
items:
|
|
1920
|
+
type: string
|
|
1921
|
+
description: >
|
|
1922
|
+
Properties to include in the API response of search and browse requests.
|
|
1923
|
+
|
|
1924
|
+
|
|
1925
|
+
By default, all response properties are included.
|
|
1926
|
+
|
|
1927
|
+
To reduce the response size, you can select which properties should be included.
|
|
1928
|
+
|
|
1929
|
+
|
|
1930
|
+
An empty list may lead to an empty API response (except properties you can't exclude).
|
|
1931
|
+
|
|
1932
|
+
|
|
1933
|
+
You can't exclude these properties:
|
|
1934
|
+
|
|
1935
|
+
`message`, `warning`, `cursor`, `abTestVariantID`,
|
|
1936
|
+
|
|
1937
|
+
or any property added by setting `getRankingInfo` to true.
|
|
1938
|
+
|
|
1939
|
+
|
|
1940
|
+
Your search depends on the `hits` field. If you omit this field, searches won't return any results.
|
|
1941
|
+
|
|
1942
|
+
Your UI might also depend on other properties, for example, for pagination.
|
|
1943
|
+
|
|
1944
|
+
Before restricting the response size, check the impact on your search experience.
|
|
1945
|
+
|
|
1946
|
+
x-categories:
|
|
1947
|
+
- Advanced
|
|
1948
|
+
maxValuesPerFacet:
|
|
1949
|
+
type: integer
|
|
1950
|
+
description: Maximum number of facet values to return for each facet.
|
|
1951
|
+
maximum: 1000
|
|
1952
|
+
x-categories:
|
|
1953
|
+
- Faceting
|
|
1954
|
+
sortFacetValuesBy:
|
|
1955
|
+
type: string
|
|
1956
|
+
description: >
|
|
1957
|
+
Order in which to retrieve facet values.
|
|
1958
|
+
|
|
1959
|
+
|
|
1960
|
+
- `count`.
|
|
1961
|
+
Facet values are retrieved by decreasing count.
|
|
1962
|
+
The count is the number of matching records containing this facet value.
|
|
1963
|
+
|
|
1964
|
+
- `alpha`.
|
|
1965
|
+
Retrieve facet values alphabetically.
|
|
1966
|
+
|
|
1967
|
+
This setting doesn't influence how facet values are displayed in your UI (see `renderingContent`).
|
|
1968
|
+
|
|
1969
|
+
For more information, see [facet value display](https://www.algolia.com/doc/guides/building-search-ui/ui-and-ux-patterns/facet-display/js/).
|
|
1970
|
+
|
|
1971
|
+
x-categories:
|
|
1972
|
+
- Faceting
|
|
1973
|
+
attributeCriteriaComputedByMinProximity:
|
|
1974
|
+
type: boolean
|
|
1975
|
+
description: >
|
|
1976
|
+
Whether the best matching attribute should be determined by minimum proximity.
|
|
1977
|
+
|
|
1978
|
+
|
|
1979
|
+
This setting only affects ranking if the Attribute ranking criterion comes before Proximity in the `ranking` setting.
|
|
1980
|
+
|
|
1981
|
+
If true, the best matching attribute is selected based on the minimum proximity of multiple matches.
|
|
1982
|
+
|
|
1983
|
+
Otherwise, the best matching attribute is determined by the order in the `searchableAttributes` setting.
|
|
1109
1984
|
|
|
1110
|
-
maximum: 100
|
|
1111
1985
|
x-categories:
|
|
1112
1986
|
- Advanced
|
|
1113
1987
|
order:
|
|
@@ -1120,7 +1994,7 @@ components:
|
|
|
1120
1994
|
type: array
|
|
1121
1995
|
items:
|
|
1122
1996
|
type: string
|
|
1123
|
-
|
|
1997
|
+
IndexSettings_facets:
|
|
1124
1998
|
description: Order of facet names.
|
|
1125
1999
|
type: object
|
|
1126
2000
|
additionalProperties: false
|
|
@@ -1174,7 +2048,7 @@ components:
|
|
|
1174
2048
|
additionalProperties: false
|
|
1175
2049
|
properties:
|
|
1176
2050
|
facets:
|
|
1177
|
-
$ref: '#/components/schemas/
|
|
2051
|
+
$ref: '#/components/schemas/IndexSettings_facets'
|
|
1178
2052
|
values:
|
|
1179
2053
|
$ref: '#/components/schemas/values'
|
|
1180
2054
|
redirectURL:
|
|
@@ -1184,12 +2058,58 @@ components:
|
|
|
1184
2058
|
properties:
|
|
1185
2059
|
url:
|
|
1186
2060
|
type: string
|
|
2061
|
+
bannerImageUrl:
|
|
2062
|
+
description: URL for an image to show inside a banner.
|
|
2063
|
+
type: object
|
|
2064
|
+
additionalProperties: false
|
|
2065
|
+
properties:
|
|
2066
|
+
url:
|
|
2067
|
+
type: string
|
|
2068
|
+
bannerImage:
|
|
2069
|
+
description: Image to show inside a banner.
|
|
2070
|
+
type: object
|
|
2071
|
+
additionalProperties: false
|
|
2072
|
+
properties:
|
|
2073
|
+
urls:
|
|
2074
|
+
type: array
|
|
2075
|
+
items:
|
|
2076
|
+
$ref: '#/components/schemas/bannerImageUrl'
|
|
2077
|
+
title:
|
|
2078
|
+
type: string
|
|
2079
|
+
bannerLink:
|
|
2080
|
+
description: Link for a banner defined in the Merchandising Studio.
|
|
2081
|
+
type: object
|
|
2082
|
+
additionalProperties: false
|
|
2083
|
+
properties:
|
|
2084
|
+
url:
|
|
2085
|
+
type: string
|
|
2086
|
+
banner:
|
|
2087
|
+
description: Banner with image and link to redirect users.
|
|
2088
|
+
type: object
|
|
2089
|
+
additionalProperties: false
|
|
2090
|
+
properties:
|
|
2091
|
+
image:
|
|
2092
|
+
$ref: '#/components/schemas/bannerImage'
|
|
2093
|
+
link:
|
|
2094
|
+
$ref: '#/components/schemas/bannerLink'
|
|
2095
|
+
banners:
|
|
2096
|
+
description: Banners defined in the Merchandising Studio for a given search.
|
|
2097
|
+
type: array
|
|
2098
|
+
items:
|
|
2099
|
+
$ref: '#/components/schemas/banner'
|
|
2100
|
+
widgets:
|
|
2101
|
+
description: Widgets returned from any rules that are applied to the current search.
|
|
2102
|
+
type: object
|
|
2103
|
+
additionalProperties: false
|
|
2104
|
+
properties:
|
|
2105
|
+
banners:
|
|
2106
|
+
$ref: '#/components/schemas/banners'
|
|
1187
2107
|
renderingContent:
|
|
1188
2108
|
description: >
|
|
1189
2109
|
Extra data that can be used in the search UI.
|
|
1190
2110
|
|
|
1191
2111
|
|
|
1192
|
-
You can use this to control aspects of your search UI, such as
|
|
2112
|
+
You can use this to control aspects of your search UI, such as the order of facet names and values
|
|
1193
2113
|
|
|
1194
2114
|
without changing your frontend code.
|
|
1195
2115
|
|
|
@@ -1200,8 +2120,20 @@ components:
|
|
|
1200
2120
|
$ref: '#/components/schemas/facetOrdering'
|
|
1201
2121
|
redirect:
|
|
1202
2122
|
$ref: '#/components/schemas/redirectURL'
|
|
2123
|
+
widgets:
|
|
2124
|
+
$ref: '#/components/schemas/widgets'
|
|
1203
2125
|
x-categories:
|
|
1204
2126
|
- Advanced
|
|
2127
|
+
enableReRanking:
|
|
2128
|
+
type: boolean
|
|
2129
|
+
description: >
|
|
2130
|
+
Whether this search will use [Dynamic Re-Ranking](https://www.algolia.com/doc/guides/algolia-ai/re-ranking/).
|
|
2131
|
+
|
|
2132
|
+
|
|
2133
|
+
This setting only has an effect if you activated Dynamic Re-Ranking for this index in the Algolia dashboard.
|
|
2134
|
+
|
|
2135
|
+
x-categories:
|
|
2136
|
+
- Filtering
|
|
1205
2137
|
reRankingApplyFilter:
|
|
1206
2138
|
description: >
|
|
1207
2139
|
Restrict [Dynamic Re-Ranking](https://www.algolia.com/doc/guides/algolia-ai/re-ranking/) to records that match these filters.
|
|
@@ -1213,570 +2145,102 @@ components:
|
|
|
1213
2145
|
- type: string
|
|
1214
2146
|
x-categories:
|
|
1215
2147
|
- Filtering
|
|
1216
|
-
|
|
2148
|
+
properties-reRankingApplyFilter:
|
|
2149
|
+
oneOf:
|
|
2150
|
+
- $ref: '#/components/schemas/reRankingApplyFilter'
|
|
2151
|
+
- type: 'null'
|
|
2152
|
+
baseRecommendIndexSettings:
|
|
1217
2153
|
type: object
|
|
1218
2154
|
additionalProperties: false
|
|
1219
2155
|
properties:
|
|
1220
2156
|
attributesToRetrieve:
|
|
1221
|
-
|
|
1222
|
-
items:
|
|
1223
|
-
type: string
|
|
1224
|
-
example:
|
|
1225
|
-
- author
|
|
1226
|
-
- title
|
|
1227
|
-
- content
|
|
1228
|
-
description: >
|
|
1229
|
-
Attributes to include in the API response.
|
|
1230
|
-
|
|
1231
|
-
|
|
1232
|
-
To reduce the size of your response, you can retrieve only some of the attributes.
|
|
1233
|
-
|
|
1234
|
-
Attribute names are case-sensitive.
|
|
1235
|
-
|
|
1236
|
-
|
|
1237
|
-
- `*` retrieves all attributes, except attributes included in the `customRanking` and `unretrievableAttributes` settings.
|
|
1238
|
-
|
|
1239
|
-
- To retrieve all attributes except a specific one, prefix the attribute with a dash and combine it with the `*`: `["*", "-ATTRIBUTE"]`.
|
|
1240
|
-
|
|
1241
|
-
- The `objectID` attribute is always included.
|
|
1242
|
-
|
|
1243
|
-
x-categories:
|
|
1244
|
-
- Attributes
|
|
2157
|
+
$ref: '#/components/schemas/attributesToRetrieve'
|
|
1245
2158
|
ranking:
|
|
1246
|
-
|
|
1247
|
-
items:
|
|
1248
|
-
type: string
|
|
1249
|
-
description: >
|
|
1250
|
-
Determines the order in which Algolia returns your results.
|
|
1251
|
-
|
|
1252
|
-
|
|
1253
|
-
By default, each entry corresponds to a [ranking criteria](https://www.algolia.com/doc/guides/managing-results/relevance-overview/in-depth/ranking-criteria/).
|
|
1254
|
-
|
|
1255
|
-
The tie-breaking algorithm sequentially applies each criterion in the order they're specified.
|
|
1256
|
-
|
|
1257
|
-
If you configure a replica index for [sorting by an attribute](https://www.algolia.com/doc/guides/managing-results/refine-results/sorting/how-to/sort-by-attribute/),
|
|
1258
|
-
|
|
1259
|
-
you put the sorting attribute at the top of the list.
|
|
1260
|
-
|
|
1261
|
-
|
|
1262
|
-
**Modifiers**
|
|
1263
|
-
|
|
1264
|
-
|
|
1265
|
-
- `asc("ATTRIBUTE")`.
|
|
1266
|
-
Sort the index by the values of an attribute, in ascending order.
|
|
1267
|
-
- `desc("ATTRIBUTE")`.
|
|
1268
|
-
Sort the index by the values of an attribute, in descending order.
|
|
1269
|
-
|
|
1270
|
-
Before you modify the default setting,
|
|
1271
|
-
|
|
1272
|
-
you should test your changes in the dashboard,
|
|
1273
|
-
|
|
1274
|
-
and by [A/B testing](https://www.algolia.com/doc/guides/ab-testing/what-is-ab-testing/).
|
|
1275
|
-
|
|
1276
|
-
x-categories:
|
|
1277
|
-
- Ranking
|
|
1278
|
-
customRanking:
|
|
1279
|
-
type: array
|
|
1280
|
-
items:
|
|
1281
|
-
type: string
|
|
1282
|
-
example:
|
|
1283
|
-
- desc(popularity)
|
|
1284
|
-
- asc(price)
|
|
1285
|
-
description: >
|
|
1286
|
-
Attributes to use as [custom ranking](https://www.algolia.com/doc/guides/managing-results/must-do/custom-ranking/).
|
|
1287
|
-
|
|
1288
|
-
Attribute names are case-sensitive.
|
|
1289
|
-
|
|
1290
|
-
|
|
1291
|
-
The custom ranking attributes decide which items are shown first if the other ranking criteria are equal.
|
|
1292
|
-
|
|
1293
|
-
|
|
1294
|
-
Records with missing values for your selected custom ranking attributes are always sorted last.
|
|
1295
|
-
|
|
1296
|
-
Boolean attributes are sorted based on their alphabetical order.
|
|
1297
|
-
|
|
1298
|
-
|
|
1299
|
-
**Modifiers**
|
|
1300
|
-
|
|
1301
|
-
|
|
1302
|
-
- `asc("ATTRIBUTE")`.
|
|
1303
|
-
Sort the index by the values of an attribute, in ascending order.
|
|
1304
|
-
|
|
1305
|
-
- `desc("ATTRIBUTE")`.
|
|
1306
|
-
Sort the index by the values of an attribute, in descending order.
|
|
1307
|
-
|
|
1308
|
-
If you use two or more custom ranking attributes,
|
|
1309
|
-
|
|
1310
|
-
[reduce the precision](https://www.algolia.com/doc/guides/managing-results/must-do/custom-ranking/how-to/controlling-custom-ranking-metrics-precision/) of your first attributes,
|
|
1311
|
-
|
|
1312
|
-
or the other attributes will never be applied.
|
|
1313
|
-
|
|
1314
|
-
x-categories:
|
|
1315
|
-
- Ranking
|
|
2159
|
+
$ref: '#/components/schemas/ranking'
|
|
1316
2160
|
relevancyStrictness:
|
|
1317
|
-
|
|
1318
|
-
example: 90
|
|
1319
|
-
description: >
|
|
1320
|
-
Relevancy threshold below which less relevant results aren't included in the results.
|
|
1321
|
-
|
|
1322
|
-
|
|
1323
|
-
You can only set `relevancyStrictness` on [virtual replica indices](https://www.algolia.com/doc/guides/managing-results/refine-results/sorting/in-depth/replicas/#what-are-virtual-replicas).
|
|
1324
|
-
|
|
1325
|
-
Use this setting to strike a balance between the relevance and number of returned results.
|
|
1326
|
-
|
|
1327
|
-
x-categories:
|
|
1328
|
-
- Ranking
|
|
2161
|
+
$ref: '#/components/schemas/relevancyStrictness'
|
|
1329
2162
|
attributesToHighlight:
|
|
1330
|
-
|
|
1331
|
-
items:
|
|
1332
|
-
type: string
|
|
1333
|
-
example:
|
|
1334
|
-
- author
|
|
1335
|
-
- title
|
|
1336
|
-
- conten
|
|
1337
|
-
- content
|
|
1338
|
-
description: >
|
|
1339
|
-
Attributes to highlight.
|
|
1340
|
-
|
|
1341
|
-
|
|
1342
|
-
By default, all searchable attributes are highlighted.
|
|
1343
|
-
|
|
1344
|
-
Use `*` to highlight all attributes or use an empty array `[]` to turn off highlighting.
|
|
1345
|
-
|
|
1346
|
-
Attribute names are case-sensitive.
|
|
1347
|
-
|
|
1348
|
-
|
|
1349
|
-
With highlighting, strings that match the search query are surrounded by HTML tags defined by `highlightPreTag` and `highlightPostTag`.
|
|
1350
|
-
|
|
1351
|
-
You can use this to visually highlight matching parts of a search query in your UI.
|
|
1352
|
-
|
|
1353
|
-
|
|
1354
|
-
For more information, see [Highlighting and snippeting](https://www.algolia.com/doc/guides/building-search-ui/ui-and-ux-patterns/highlighting-snippeting/js/).
|
|
1355
|
-
|
|
1356
|
-
x-categories:
|
|
1357
|
-
- Highlighting and Snippeting
|
|
2163
|
+
$ref: '#/components/schemas/attributesToHighlight'
|
|
1358
2164
|
attributesToSnippet:
|
|
1359
|
-
|
|
1360
|
-
items:
|
|
1361
|
-
type: string
|
|
1362
|
-
example:
|
|
1363
|
-
- content:80
|
|
1364
|
-
- description
|
|
1365
|
-
description: >
|
|
1366
|
-
Attributes for which to enable snippets.
|
|
1367
|
-
|
|
1368
|
-
Attribute names are case-sensitive.
|
|
1369
|
-
|
|
1370
|
-
|
|
1371
|
-
Snippets provide additional context to matched words.
|
|
1372
|
-
|
|
1373
|
-
If you enable snippets, they include 10 words, including the matched word.
|
|
1374
|
-
|
|
1375
|
-
The matched word will also be wrapped by HTML tags for highlighting.
|
|
1376
|
-
|
|
1377
|
-
You can adjust the number of words with the following notation: `ATTRIBUTE:NUMBER`,
|
|
1378
|
-
|
|
1379
|
-
where `NUMBER` is the number of words to be extracted.
|
|
1380
|
-
|
|
1381
|
-
x-categories:
|
|
1382
|
-
- Highlighting and Snippeting
|
|
2165
|
+
$ref: '#/components/schemas/attributesToSnippet'
|
|
1383
2166
|
highlightPreTag:
|
|
1384
|
-
|
|
1385
|
-
description: >-
|
|
1386
|
-
HTML tag to insert before the highlighted parts in all highlighted results and snippets.
|
|
1387
|
-
|
|
1388
|
-
x-categories:
|
|
1389
|
-
- Highlighting and Snippeting
|
|
2167
|
+
$ref: '#/components/schemas/highlightPreTag'
|
|
1390
2168
|
highlightPostTag:
|
|
1391
|
-
|
|
1392
|
-
description: >-
|
|
1393
|
-
HTML tag to insert after the highlighted parts in all highlighted results and snippets.
|
|
1394
|
-
|
|
1395
|
-
x-categories:
|
|
1396
|
-
- Highlighting and Snippeting
|
|
2169
|
+
$ref: '#/components/schemas/highlightPostTag'
|
|
1397
2170
|
snippetEllipsisText:
|
|
1398
|
-
|
|
1399
|
-
description: String used as an ellipsis indicator when a snippet is truncated.
|
|
1400
|
-
x-categories:
|
|
1401
|
-
- Highlighting and Snippeting
|
|
2171
|
+
$ref: '#/components/schemas/snippetEllipsisText'
|
|
1402
2172
|
restrictHighlightAndSnippetArrays:
|
|
1403
|
-
|
|
1404
|
-
description: >
|
|
1405
|
-
Whether to restrict highlighting and snippeting to items that at least partially matched the search query.
|
|
1406
|
-
|
|
1407
|
-
By default, all items are highlighted and snippeted.
|
|
1408
|
-
|
|
1409
|
-
x-categories:
|
|
1410
|
-
- Highlighting and Snippeting
|
|
1411
|
-
hitsPerPage:
|
|
1412
|
-
$ref: '#/components/schemas/hitsPerPage'
|
|
2173
|
+
$ref: '#/components/schemas/restrictHighlightAndSnippetArrays'
|
|
1413
2174
|
minWordSizefor1Typo:
|
|
1414
|
-
|
|
1415
|
-
description: >-
|
|
1416
|
-
Minimum number of characters a word in the search query must contain to accept matches with [one typo](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/in-depth/configuring-typo-tolerance/#configuring-word-length-for-typos).
|
|
1417
|
-
|
|
1418
|
-
x-categories:
|
|
1419
|
-
- Typos
|
|
2175
|
+
$ref: '#/components/schemas/minWordSizefor1Typo'
|
|
1420
2176
|
minWordSizefor2Typos:
|
|
1421
|
-
|
|
1422
|
-
description: >-
|
|
1423
|
-
Minimum number of characters a word in the search query must contain to accept matches with [two typos](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/in-depth/configuring-typo-tolerance/#configuring-word-length-for-typos).
|
|
1424
|
-
|
|
1425
|
-
x-categories:
|
|
1426
|
-
- Typos
|
|
2177
|
+
$ref: '#/components/schemas/minWordSizefor2Typos'
|
|
1427
2178
|
typoTolerance:
|
|
1428
2179
|
$ref: '#/components/schemas/typoTolerance'
|
|
1429
2180
|
allowTyposOnNumericTokens:
|
|
1430
|
-
|
|
1431
|
-
description: |
|
|
1432
|
-
Whether to allow typos on numbers in the search query.
|
|
1433
|
-
|
|
1434
|
-
Turn off this setting to reduce the number of irrelevant matches
|
|
1435
|
-
when searching in large sets of similar numbers.
|
|
1436
|
-
x-categories:
|
|
1437
|
-
- Typos
|
|
2181
|
+
$ref: '#/components/schemas/allowTyposOnNumericTokens'
|
|
1438
2182
|
disableTypoToleranceOnAttributes:
|
|
1439
|
-
|
|
1440
|
-
items:
|
|
1441
|
-
type: string
|
|
1442
|
-
example:
|
|
1443
|
-
- sku
|
|
1444
|
-
description: >
|
|
1445
|
-
Attributes for which you want to turn off [typo tolerance](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/).
|
|
1446
|
-
|
|
1447
|
-
Attribute names are case-sensitive.
|
|
1448
|
-
|
|
1449
|
-
|
|
1450
|
-
Returning only exact matches can help when:
|
|
1451
|
-
|
|
1452
|
-
|
|
1453
|
-
- [Searching in hyphenated attributes](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/how-to/how-to-search-in-hyphenated-attributes/).
|
|
1454
|
-
|
|
1455
|
-
- Reducing the number of matches when you have too many.
|
|
1456
|
-
This can happen with attributes that are long blocks of text, such as product descriptions.
|
|
1457
|
-
|
|
1458
|
-
Consider alternatives such as `disableTypoToleranceOnWords` or adding synonyms if your attributes have intentional unusual spellings that might look like typos.
|
|
1459
|
-
|
|
1460
|
-
x-categories:
|
|
1461
|
-
- Typos
|
|
2183
|
+
$ref: '#/components/schemas/disableTypoToleranceOnAttributes'
|
|
1462
2184
|
ignorePlurals:
|
|
1463
|
-
$ref: '#/components/schemas/ignorePlurals'
|
|
1464
|
-
removeStopWords:
|
|
1465
|
-
$ref: '#/components/schemas/removeStopWords'
|
|
1466
|
-
|
|
1467
|
-
|
|
1468
|
-
|
|
1469
|
-
|
|
1470
|
-
Characters for which diacritics should be preserved.
|
|
1471
|
-
|
|
1472
|
-
By default, Algolia removes diacritics from letters.
|
|
1473
|
-
For example, `é` becomes `e`. If this causes issues in your search,
|
|
1474
|
-
you can specify characters that should keep their diacritics.
|
|
1475
|
-
x-categories:
|
|
1476
|
-
- Languages
|
|
1477
|
-
queryLanguages:
|
|
1478
|
-
type: array
|
|
1479
|
-
items:
|
|
1480
|
-
$ref: '#/components/schemas/supportedLanguage'
|
|
1481
|
-
example:
|
|
1482
|
-
- es
|
|
1483
|
-
description: >
|
|
1484
|
-
Languages for language-specific query processing steps such as plurals, stop-word removal, and word-detection dictionaries.
|
|
1485
|
-
|
|
1486
|
-
|
|
1487
|
-
This setting sets a default list of languages used by the `removeStopWords` and `ignorePlurals` settings.
|
|
1488
|
-
|
|
1489
|
-
This setting also sets a dictionary for word detection in the logogram-based [CJK](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/normalization/#normalization-for-logogram-based-languages-cjk) languages.
|
|
1490
|
-
|
|
1491
|
-
To support this, you must place the CJK language **first**.
|
|
1492
|
-
|
|
1493
|
-
|
|
1494
|
-
**You should always specify a query language.**
|
|
1495
|
-
|
|
1496
|
-
If you don't specify an indexing language, the search engine uses all [supported languages](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/supported-languages/),
|
|
1497
|
-
|
|
1498
|
-
or the languages you specified with the `ignorePlurals` or `removeStopWords` parameters.
|
|
1499
|
-
|
|
1500
|
-
This can lead to unexpected search results.
|
|
1501
|
-
|
|
1502
|
-
For more information, see [Language-specific configuration](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/language-specific-configurations/).
|
|
1503
|
-
|
|
1504
|
-
x-categories:
|
|
1505
|
-
- Languages
|
|
1506
|
-
decompoundQuery:
|
|
1507
|
-
type: boolean
|
|
1508
|
-
description: >
|
|
1509
|
-
Whether to split compound words in the query into their building blocks.
|
|
1510
|
-
|
|
1511
|
-
|
|
1512
|
-
For more information, see [Word segmentation](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/language-specific-configurations/#splitting-compound-words).
|
|
1513
|
-
|
|
1514
|
-
Word segmentation is supported for these languages: German, Dutch, Finnish, Swedish, and Norwegian.
|
|
1515
|
-
|
|
1516
|
-
Decompounding doesn't work for words with [non-spacing mark Unicode characters](https://www.charactercodes.net/category/non-spacing_mark).
|
|
1517
|
-
|
|
1518
|
-
For example, `Gartenstühle` won't be decompounded if the `ü` consists of `u` (U+0075) and `◌̈` (U+0308).
|
|
1519
|
-
|
|
1520
|
-
x-categories:
|
|
1521
|
-
- Languages
|
|
2185
|
+
$ref: '#/components/schemas/ignorePlurals'
|
|
2186
|
+
removeStopWords:
|
|
2187
|
+
$ref: '#/components/schemas/removeStopWords'
|
|
2188
|
+
queryLanguages:
|
|
2189
|
+
$ref: '#/components/schemas/queryLanguages'
|
|
2190
|
+
decompoundQuery:
|
|
2191
|
+
$ref: '#/components/schemas/decompoundQuery'
|
|
1522
2192
|
enableRules:
|
|
1523
|
-
|
|
1524
|
-
description: Whether to enable rules.
|
|
1525
|
-
x-categories:
|
|
1526
|
-
- Rules
|
|
2193
|
+
$ref: '#/components/schemas/enableRules'
|
|
1527
2194
|
enablePersonalization:
|
|
1528
|
-
|
|
1529
|
-
description: Whether to enable Personalization.
|
|
1530
|
-
x-categories:
|
|
1531
|
-
- Personalization
|
|
2195
|
+
$ref: '#/components/schemas/enablePersonalization'
|
|
1532
2196
|
queryType:
|
|
1533
2197
|
$ref: '#/components/schemas/queryType'
|
|
1534
2198
|
removeWordsIfNoResults:
|
|
1535
2199
|
$ref: '#/components/schemas/removeWordsIfNoResults'
|
|
1536
|
-
mode:
|
|
1537
|
-
$ref: '#/components/schemas/mode'
|
|
1538
|
-
semanticSearch:
|
|
1539
|
-
$ref: '#/components/schemas/semanticSearch'
|
|
1540
2200
|
advancedSyntax:
|
|
1541
|
-
|
|
1542
|
-
description: >
|
|
1543
|
-
Whether to support phrase matching and excluding words from search queries.
|
|
1544
|
-
|
|
1545
|
-
|
|
1546
|
-
Use the `advancedSyntaxFeatures` parameter to control which feature is supported.
|
|
1547
|
-
|
|
1548
|
-
x-categories:
|
|
1549
|
-
- Query strategy
|
|
2201
|
+
$ref: '#/components/schemas/advancedSyntax'
|
|
1550
2202
|
optionalWords:
|
|
1551
|
-
|
|
1552
|
-
items:
|
|
1553
|
-
type: string
|
|
1554
|
-
example:
|
|
1555
|
-
- blue
|
|
1556
|
-
- iphone case
|
|
1557
|
-
description: >
|
|
1558
|
-
Words that should be considered optional when found in the query.
|
|
1559
|
-
|
|
1560
|
-
|
|
1561
|
-
By default, records must match all words in the search query to be included in the search results.
|
|
1562
|
-
|
|
1563
|
-
Adding optional words can help to increase the number of search results by running an additional search query that doesn't include the optional words.
|
|
1564
|
-
|
|
1565
|
-
For example, if the search query is "action video" and "video" is an optional word,
|
|
1566
|
-
|
|
1567
|
-
the search engine runs two queries. One for "action video" and one for "action".
|
|
1568
|
-
|
|
1569
|
-
Records that match all words are ranked higher.
|
|
1570
|
-
|
|
1571
|
-
|
|
1572
|
-
For a search query with 4 or more words **and** all its words are optional,
|
|
1573
|
-
|
|
1574
|
-
the number of matched words required for a record to be included in the search results increases for every 1,000 records:
|
|
1575
|
-
|
|
1576
|
-
|
|
1577
|
-
- If `optionalWords` has less than 10 words, the required number of matched words increases by 1:
|
|
1578
|
-
results 1 to 1,000 require 1 matched word, results 1,001 to 2000 need 2 matched words.
|
|
1579
|
-
- If `optionalWords` has 10 or more words, the number of required matched words increases by the number of optional words dividied by 5 (rounded down).
|
|
1580
|
-
For example, with 18 optional words: results 1 to 1,000 require 1 matched word, results 1,001 to 2000 need 4 matched words.
|
|
1581
|
-
|
|
1582
|
-
For more information, see [Optional words](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/empty-or-insufficient-results/#creating-a-list-of-optional-words).
|
|
1583
|
-
|
|
1584
|
-
x-categories:
|
|
1585
|
-
- Query strategy
|
|
2203
|
+
$ref: '#/components/schemas/optionalWords'
|
|
1586
2204
|
disableExactOnAttributes:
|
|
1587
|
-
|
|
1588
|
-
items:
|
|
1589
|
-
type: string
|
|
1590
|
-
example:
|
|
1591
|
-
- description
|
|
1592
|
-
description: >
|
|
1593
|
-
Searchable attributes for which you want to [turn off the Exact ranking criterion](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/override-search-engine-defaults/in-depth/adjust-exact-settings/#turn-off-exact-for-some-attributes).
|
|
1594
|
-
|
|
1595
|
-
Attribute names are case-sensitive.
|
|
1596
|
-
|
|
1597
|
-
|
|
1598
|
-
This can be useful for attributes with long values, where the likelyhood of an exact match is high,
|
|
1599
|
-
|
|
1600
|
-
such as product descriptions.
|
|
1601
|
-
|
|
1602
|
-
Turning off the Exact ranking criterion for these attributes favors exact matching on other attributes.
|
|
1603
|
-
|
|
1604
|
-
This reduces the impact of individual attributes with a lot of content on ranking.
|
|
1605
|
-
|
|
1606
|
-
x-categories:
|
|
1607
|
-
- Query strategy
|
|
2205
|
+
$ref: '#/components/schemas/disableExactOnAttributes'
|
|
1608
2206
|
exactOnSingleWordQuery:
|
|
1609
2207
|
$ref: '#/components/schemas/exactOnSingleWordQuery'
|
|
1610
2208
|
alternativesAsExact:
|
|
1611
|
-
|
|
1612
|
-
items:
|
|
1613
|
-
$ref: '#/components/schemas/alternativesAsExact'
|
|
1614
|
-
description: >
|
|
1615
|
-
Alternatives of query words that should be considered as exact matches by the Exact ranking criterion.
|
|
1616
|
-
|
|
1617
|
-
|
|
1618
|
-
- `ignorePlurals`.
|
|
1619
|
-
Plurals and similar declensions added by the `ignorePlurals` setting are considered exact matches.
|
|
1620
|
-
|
|
1621
|
-
- `singleWordSynonym`.
|
|
1622
|
-
Single-word synonyms, such as "NY/NYC" are considered exact matches.
|
|
1623
|
-
|
|
1624
|
-
- `multiWordsSynonym`.
|
|
1625
|
-
Multi-word synonyms, such as "NY/New York" are considered exact matches.
|
|
1626
|
-
|
|
1627
|
-
x-categories:
|
|
1628
|
-
- Query strategy
|
|
2209
|
+
$ref: '#/components/schemas/properties-alternativesAsExact'
|
|
1629
2210
|
advancedSyntaxFeatures:
|
|
1630
|
-
|
|
1631
|
-
items:
|
|
1632
|
-
$ref: '#/components/schemas/advancedSyntaxFeatures'
|
|
1633
|
-
description: |
|
|
1634
|
-
Advanced search syntax features you want to support.
|
|
1635
|
-
|
|
1636
|
-
- `exactPhrase`.
|
|
1637
|
-
Phrases in quotes must match exactly.
|
|
1638
|
-
For example, `sparkly blue "iPhone case"` only returns records with the exact string "iPhone case".
|
|
1639
|
-
|
|
1640
|
-
- `excludeWords`.
|
|
1641
|
-
Query words prefixed with a `-` must not occur in a record.
|
|
1642
|
-
For example, `search -engine` matches records that contain "search" but not "engine".
|
|
1643
|
-
|
|
1644
|
-
This setting only has an effect if `advancedSyntax` is true.
|
|
1645
|
-
x-categories:
|
|
1646
|
-
- Query strategy
|
|
2211
|
+
$ref: '#/components/schemas/properties-advancedSyntaxFeatures'
|
|
1647
2212
|
distinct:
|
|
1648
2213
|
$ref: '#/components/schemas/distinct'
|
|
1649
2214
|
replaceSynonymsInHighlight:
|
|
1650
|
-
|
|
1651
|
-
description: >
|
|
1652
|
-
Whether to replace a highlighted word with the matched synonym.
|
|
1653
|
-
|
|
1654
|
-
|
|
1655
|
-
By default, the original words are highlighted even if a synonym matches.
|
|
1656
|
-
|
|
1657
|
-
For example, with `home` as a synonym for `house` and a search for `home`,
|
|
1658
|
-
|
|
1659
|
-
records matching either "home" or "house" are included in the search results,
|
|
1660
|
-
|
|
1661
|
-
and either "home" or "house" are highlighted.
|
|
1662
|
-
|
|
1663
|
-
|
|
1664
|
-
With `replaceSynonymsInHighlight` set to `true`, a search for `home` still matches the same records,
|
|
1665
|
-
|
|
1666
|
-
but all occurences of "house" are replaced by "home" in the highlighted response.
|
|
1667
|
-
|
|
1668
|
-
x-categories:
|
|
1669
|
-
- Highlighting and Snippeting
|
|
2215
|
+
$ref: '#/components/schemas/replaceSynonymsInHighlight'
|
|
1670
2216
|
minProximity:
|
|
1671
|
-
|
|
1672
|
-
minimum: 1
|
|
1673
|
-
maximum: 7
|
|
1674
|
-
description: >
|
|
1675
|
-
Minimum proximity score for two matching words.
|
|
1676
|
-
|
|
1677
|
-
|
|
1678
|
-
This adjusts the [Proximity ranking criterion](https://www.algolia.com/doc/guides/managing-results/relevance-overview/in-depth/ranking-criteria/#proximity)
|
|
1679
|
-
|
|
1680
|
-
by equally scoring matches that are farther apart.
|
|
1681
|
-
|
|
1682
|
-
|
|
1683
|
-
For example, if `minProximity` is 2, neighboring matches and matches with one word between them would have the same score.
|
|
1684
|
-
|
|
1685
|
-
x-categories:
|
|
1686
|
-
- Advanced
|
|
2217
|
+
$ref: '#/components/schemas/minProximity'
|
|
1687
2218
|
responseFields:
|
|
1688
|
-
|
|
1689
|
-
items:
|
|
1690
|
-
type: string
|
|
1691
|
-
description: >
|
|
1692
|
-
Properties to include in the API response of `search` and `browse` requests.
|
|
1693
|
-
|
|
1694
|
-
|
|
1695
|
-
By default, all response properties are included.
|
|
1696
|
-
|
|
1697
|
-
To reduce the response size, you can select, which attributes should be included.
|
|
1698
|
-
|
|
1699
|
-
|
|
1700
|
-
You can't exclude these properties:
|
|
1701
|
-
|
|
1702
|
-
`message`, `warning`, `cursor`, `serverUsed`, `indexUsed`,
|
|
1703
|
-
|
|
1704
|
-
`abTestVariantID`, `parsedQuery`, or any property triggered by the `getRankingInfo` parameter.
|
|
1705
|
-
|
|
1706
|
-
|
|
1707
|
-
Don't exclude properties that you might need in your search UI.
|
|
1708
|
-
|
|
1709
|
-
x-categories:
|
|
1710
|
-
- Advanced
|
|
1711
|
-
maxFacetHits:
|
|
1712
|
-
$ref: '#/components/schemas/maxFacetHits'
|
|
2219
|
+
$ref: '#/components/schemas/responseFields'
|
|
1713
2220
|
maxValuesPerFacet:
|
|
1714
|
-
|
|
1715
|
-
description: Maximum number of facet values to return for each facet.
|
|
1716
|
-
maximum: 1000
|
|
1717
|
-
x-categories:
|
|
1718
|
-
- Faceting
|
|
2221
|
+
$ref: '#/components/schemas/maxValuesPerFacet'
|
|
1719
2222
|
sortFacetValuesBy:
|
|
1720
|
-
|
|
1721
|
-
description: >
|
|
1722
|
-
Order in which to retrieve facet values.
|
|
1723
|
-
|
|
1724
|
-
|
|
1725
|
-
- `count`.
|
|
1726
|
-
Facet values are retrieved by decreasing count.
|
|
1727
|
-
The count is the number of matching records containing this facet value.
|
|
1728
|
-
|
|
1729
|
-
- `alpha`.
|
|
1730
|
-
Retrieve facet values alphabetically.
|
|
1731
|
-
|
|
1732
|
-
This setting doesn't influence how facet values are displayed in your UI (see `renderingContent`).
|
|
1733
|
-
|
|
1734
|
-
For more information, see [facet value display](https://www.algolia.com/doc/guides/building-search-ui/ui-and-ux-patterns/facet-display/js/).
|
|
1735
|
-
|
|
1736
|
-
x-categories:
|
|
1737
|
-
- Faceting
|
|
2223
|
+
$ref: '#/components/schemas/sortFacetValuesBy'
|
|
1738
2224
|
attributeCriteriaComputedByMinProximity:
|
|
1739
|
-
|
|
1740
|
-
description: >
|
|
1741
|
-
Whether the best matching attribute should be determined by minimum proximity.
|
|
1742
|
-
|
|
1743
|
-
|
|
1744
|
-
This setting only affects ranking if the Attribute ranking criterion comes before Proximity in the `ranking` setting.
|
|
1745
|
-
|
|
1746
|
-
If true, the best matching attribute is selected based on the minimum proximity of multiple matches.
|
|
1747
|
-
|
|
1748
|
-
Otherwise, the best matching attribute is determined by the order in the `searchableAttributes` setting.
|
|
1749
|
-
|
|
1750
|
-
x-categories:
|
|
1751
|
-
- Advanced
|
|
2225
|
+
$ref: '#/components/schemas/attributeCriteriaComputedByMinProximity'
|
|
1752
2226
|
renderingContent:
|
|
1753
2227
|
$ref: '#/components/schemas/renderingContent'
|
|
1754
2228
|
enableReRanking:
|
|
1755
|
-
|
|
1756
|
-
description: >
|
|
1757
|
-
Whether this search will use [Dynamic Re-Ranking](https://www.algolia.com/doc/guides/algolia-ai/re-ranking/).
|
|
1758
|
-
|
|
1759
|
-
|
|
1760
|
-
This setting only has an effect if you activated Dynamic Re-Ranking for this index in the Algolia dashboard.
|
|
1761
|
-
|
|
1762
|
-
x-categories:
|
|
1763
|
-
- Filtering
|
|
2229
|
+
$ref: '#/components/schemas/enableReRanking'
|
|
1764
2230
|
reRankingApplyFilter:
|
|
1765
|
-
|
|
1766
|
-
|
|
1767
|
-
|
|
1768
|
-
searchParamsObject:
|
|
1769
|
-
title: Search parameters as object
|
|
1770
|
-
description: >-
|
|
1771
|
-
Each parameter value, including the `query` must not be larger than 512 bytes.
|
|
1772
|
-
|
|
2231
|
+
$ref: '#/components/schemas/properties-reRankingApplyFilter'
|
|
2232
|
+
recommendIndexSettings:
|
|
2233
|
+
description: Index settings.
|
|
1773
2234
|
allOf:
|
|
1774
|
-
- $ref: '#/components/schemas/
|
|
1775
|
-
- $ref: '#/components/schemas/
|
|
1776
|
-
|
|
1777
|
-
title:
|
|
2235
|
+
- $ref: '#/components/schemas/baseIndexSettings'
|
|
2236
|
+
- $ref: '#/components/schemas/baseRecommendIndexSettings'
|
|
2237
|
+
recommendSearchParams:
|
|
2238
|
+
title: Search parameters as object
|
|
2239
|
+
description: Search parameters for filtering the recommendations.
|
|
1778
2240
|
allOf:
|
|
1779
|
-
- $ref: '#/components/schemas/
|
|
2241
|
+
- $ref: '#/components/schemas/baseRecommendSearchParams'
|
|
2242
|
+
- $ref: '#/components/schemas/searchParamsQuery'
|
|
2243
|
+
- $ref: '#/components/schemas/recommendIndexSettings'
|
|
1780
2244
|
baseRecommendRequest:
|
|
1781
2245
|
type: object
|
|
1782
2246
|
additionalProperties: false
|
|
@@ -1794,7 +2258,7 @@ components:
|
|
|
1794
2258
|
maxRecommendations:
|
|
1795
2259
|
type: integer
|
|
1796
2260
|
minimum: 1
|
|
1797
|
-
maximum:
|
|
2261
|
+
maximum: 30
|
|
1798
2262
|
description: >
|
|
1799
2263
|
Maximum number of recommendations to retrieve.
|
|
1800
2264
|
|
|
@@ -1853,7 +2317,7 @@ components:
|
|
|
1853
2317
|
fallbackParams:
|
|
1854
2318
|
title: fallbackParameters
|
|
1855
2319
|
allOf:
|
|
1856
|
-
- $ref: '#/components/schemas/
|
|
2320
|
+
- $ref: '#/components/schemas/recommendSearchParams'
|
|
1857
2321
|
relatedProducts:
|
|
1858
2322
|
type: object
|
|
1859
2323
|
properties:
|
|
@@ -1927,6 +2391,7 @@ components:
|
|
|
1927
2391
|
type: object
|
|
1928
2392
|
properties:
|
|
1929
2393
|
facetName:
|
|
2394
|
+
type: string
|
|
1930
2395
|
description: Facet attribute for which to retrieve trending facet values.
|
|
1931
2396
|
model:
|
|
1932
2397
|
$ref: '#/components/schemas/trendingFacetsModel'
|
|
@@ -1967,26 +2432,6 @@ components:
|
|
|
1967
2432
|
allOf:
|
|
1968
2433
|
- $ref: '#/components/schemas/baseRecommendRequest'
|
|
1969
2434
|
- $ref: '#/components/schemas/lookingSimilar'
|
|
1970
|
-
recommendedForYouModel:
|
|
1971
|
-
type: string
|
|
1972
|
-
description: |
|
|
1973
|
-
"Recommened for you" model.
|
|
1974
|
-
enum:
|
|
1975
|
-
- recommended-for-you
|
|
1976
|
-
recommendedForYou:
|
|
1977
|
-
type: object
|
|
1978
|
-
properties:
|
|
1979
|
-
model:
|
|
1980
|
-
$ref: '#/components/schemas/recommendedForYouModel'
|
|
1981
|
-
fallbackParameters:
|
|
1982
|
-
$ref: '#/components/schemas/searchParamsObject'
|
|
1983
|
-
required:
|
|
1984
|
-
- model
|
|
1985
|
-
recommendedForYouQuery:
|
|
1986
|
-
title: Recommended for you
|
|
1987
|
-
allOf:
|
|
1988
|
-
- $ref: '#/components/schemas/baseRecommendRequest'
|
|
1989
|
-
- $ref: '#/components/schemas/recommendedForYou'
|
|
1990
2435
|
recommendationsRequest:
|
|
1991
2436
|
oneOf:
|
|
1992
2437
|
- $ref: '#/components/schemas/boughtTogetherQuery'
|
|
@@ -1994,7 +2439,6 @@ components:
|
|
|
1994
2439
|
- $ref: '#/components/schemas/trendingItemsQuery'
|
|
1995
2440
|
- $ref: '#/components/schemas/trendingFacetsQuery'
|
|
1996
2441
|
- $ref: '#/components/schemas/lookingSimilarQuery'
|
|
1997
|
-
- $ref: '#/components/schemas/recommendedForYouQuery'
|
|
1998
2442
|
processingTimeMS:
|
|
1999
2443
|
type: integer
|
|
2000
2444
|
description: Time the server took to process the request, in milliseconds.
|
|
@@ -2029,17 +2473,6 @@ components:
|
|
|
2029
2473
|
- reason
|
|
2030
2474
|
- dest
|
|
2031
2475
|
- source
|
|
2032
|
-
userData:
|
|
2033
|
-
type: object
|
|
2034
|
-
example:
|
|
2035
|
-
settingID: f2a7b51e3503acc6a39b3784ffb84300
|
|
2036
|
-
pluginVersion: 1.6.0
|
|
2037
|
-
description: |
|
|
2038
|
-
An object with custom data.
|
|
2039
|
-
|
|
2040
|
-
You can store up to 32kB as custom data.
|
|
2041
|
-
x-categories:
|
|
2042
|
-
- Advanced
|
|
2043
2476
|
baseSearchResponse:
|
|
2044
2477
|
type: object
|
|
2045
2478
|
additionalProperties: true
|
|
@@ -2100,6 +2533,12 @@ components:
|
|
|
2100
2533
|
description: >-
|
|
2101
2534
|
Whether the typo search was exhaustive (`true`) or approximate (`false`). An approximation is done when the typo search query part takes more than 10% of the query budget (ie. 5ms by default) to be processed (this can happen when a lot of typo alternatives exist for the query). This field will not be included when typo-tolerance is entirely disabled.
|
|
2102
2535
|
|
|
2536
|
+
appliedRules:
|
|
2537
|
+
description: Rules applied to the query.
|
|
2538
|
+
title: appliedRules
|
|
2539
|
+
type: array
|
|
2540
|
+
items:
|
|
2541
|
+
type: object
|
|
2103
2542
|
exhaustiveFacetsCount:
|
|
2104
2543
|
type: boolean
|
|
2105
2544
|
description: >-
|
|
@@ -2214,6 +2653,12 @@ components:
|
|
|
2214
2653
|
_automaticInsights:
|
|
2215
2654
|
type: boolean
|
|
2216
2655
|
description: Whether automatic events collection is enabled for the application.
|
|
2656
|
+
page:
|
|
2657
|
+
type: integer
|
|
2658
|
+
description: Page of search results to retrieve.
|
|
2659
|
+
minimum: 0
|
|
2660
|
+
x-categories:
|
|
2661
|
+
- Pagination
|
|
2217
2662
|
nbHits:
|
|
2218
2663
|
type: integer
|
|
2219
2664
|
description: Number of results (hits).
|
|
@@ -2222,6 +2667,13 @@ components:
|
|
|
2222
2667
|
type: integer
|
|
2223
2668
|
description: Number of pages of results.
|
|
2224
2669
|
example: 1
|
|
2670
|
+
hitsPerPage:
|
|
2671
|
+
type: integer
|
|
2672
|
+
description: Number of hits per page.
|
|
2673
|
+
minimum: 1
|
|
2674
|
+
maximum: 1000
|
|
2675
|
+
x-categories:
|
|
2676
|
+
- Pagination
|
|
2225
2677
|
SearchPagination:
|
|
2226
2678
|
type: object
|
|
2227
2679
|
additionalProperties: false
|
|
@@ -2234,17 +2686,6 @@ components:
|
|
|
2234
2686
|
$ref: '#/components/schemas/nbPages'
|
|
2235
2687
|
hitsPerPage:
|
|
2236
2688
|
$ref: '#/components/schemas/hitsPerPage'
|
|
2237
|
-
required:
|
|
2238
|
-
- page
|
|
2239
|
-
- nbHits
|
|
2240
|
-
- nbPages
|
|
2241
|
-
- hitsPerPage
|
|
2242
|
-
highlightResultMap:
|
|
2243
|
-
type: object
|
|
2244
|
-
description: Surround words that match the query with HTML tags for highlighting.
|
|
2245
|
-
additionalProperties:
|
|
2246
|
-
x-additionalPropertiesName: attribute
|
|
2247
|
-
$ref: '#/components/schemas/highlightResult'
|
|
2248
2689
|
highlightedValue:
|
|
2249
2690
|
type: string
|
|
2250
2691
|
description: Highlighted attribute value, including HTML tags.
|
|
@@ -2282,29 +2723,23 @@ components:
|
|
|
2282
2723
|
x-discriminator-fields:
|
|
2283
2724
|
- matchLevel
|
|
2284
2725
|
- matchedWords
|
|
2285
|
-
|
|
2726
|
+
highlightResultMap:
|
|
2286
2727
|
type: object
|
|
2287
2728
|
description: Surround words that match the query with HTML tags for highlighting.
|
|
2729
|
+
x-is-free-form: false
|
|
2288
2730
|
additionalProperties:
|
|
2289
2731
|
x-additionalPropertiesName: attribute
|
|
2290
|
-
$ref: '#/components/schemas/
|
|
2291
|
-
highlightResultOptionArray:
|
|
2292
|
-
type: array
|
|
2293
|
-
description: Surround words that match the query with HTML tags for highlighting.
|
|
2294
|
-
items:
|
|
2295
|
-
$ref: '#/components/schemas/highlightResultOption'
|
|
2732
|
+
$ref: '#/components/schemas/highlightResult'
|
|
2296
2733
|
highlightResult:
|
|
2297
2734
|
oneOf:
|
|
2298
|
-
- $ref: '#/components/schemas/highlightResultMap'
|
|
2299
2735
|
- $ref: '#/components/schemas/highlightResultOption'
|
|
2300
|
-
- $ref: '#/components/schemas/
|
|
2301
|
-
- $ref: '#/components/schemas/
|
|
2302
|
-
|
|
2303
|
-
type:
|
|
2304
|
-
description:
|
|
2305
|
-
|
|
2306
|
-
|
|
2307
|
-
$ref: '#/components/schemas/snippetResult'
|
|
2736
|
+
- $ref: '#/components/schemas/highlightResultMap'
|
|
2737
|
+
- $ref: '#/components/schemas/highlightResultArray'
|
|
2738
|
+
highlightResultArray:
|
|
2739
|
+
type: array
|
|
2740
|
+
description: Surround words that match the query with HTML tags for highlighting.
|
|
2741
|
+
items:
|
|
2742
|
+
$ref: '#/components/schemas/highlightResult'
|
|
2308
2743
|
snippetResultOption:
|
|
2309
2744
|
type: object
|
|
2310
2745
|
description: Snippets that show the context around a matching search query.
|
|
@@ -2319,23 +2754,23 @@ components:
|
|
|
2319
2754
|
- matchLevel
|
|
2320
2755
|
x-discriminator-fields:
|
|
2321
2756
|
- matchLevel
|
|
2322
|
-
|
|
2757
|
+
snippetResultMap:
|
|
2323
2758
|
type: object
|
|
2324
2759
|
description: Snippets that show the context around a matching search query.
|
|
2760
|
+
x-is-free-form: false
|
|
2325
2761
|
additionalProperties:
|
|
2326
2762
|
x-additionalPropertiesName: attribute
|
|
2327
|
-
$ref: '#/components/schemas/
|
|
2328
|
-
snippetResultOptionArray:
|
|
2329
|
-
type: array
|
|
2330
|
-
description: Snippets that show the context around a matching search query.
|
|
2331
|
-
items:
|
|
2332
|
-
$ref: '#/components/schemas/snippetResultOption'
|
|
2763
|
+
$ref: '#/components/schemas/snippetResult'
|
|
2333
2764
|
snippetResult:
|
|
2334
2765
|
oneOf:
|
|
2335
|
-
- $ref: '#/components/schemas/snippetResultMap'
|
|
2336
2766
|
- $ref: '#/components/schemas/snippetResultOption'
|
|
2337
|
-
- $ref: '#/components/schemas/
|
|
2338
|
-
- $ref: '#/components/schemas/
|
|
2767
|
+
- $ref: '#/components/schemas/snippetResultMap'
|
|
2768
|
+
- $ref: '#/components/schemas/snippetResultArray'
|
|
2769
|
+
snippetResultArray:
|
|
2770
|
+
type: array
|
|
2771
|
+
description: Snippets that show the context around a matching search query.
|
|
2772
|
+
items:
|
|
2773
|
+
$ref: '#/components/schemas/snippetResult'
|
|
2339
2774
|
matchedGeoLocation:
|
|
2340
2775
|
type: object
|
|
2341
2776
|
properties:
|
|
@@ -2442,7 +2877,6 @@ components:
|
|
|
2442
2877
|
additionalProperties: true
|
|
2443
2878
|
required:
|
|
2444
2879
|
- objectID
|
|
2445
|
-
- _score
|
|
2446
2880
|
properties:
|
|
2447
2881
|
objectID:
|
|
2448
2882
|
$ref: '#/components/schemas/objectID'
|
|
@@ -2456,11 +2890,12 @@ components:
|
|
|
2456
2890
|
$ref: '#/components/schemas/distinctSeqID'
|
|
2457
2891
|
_score:
|
|
2458
2892
|
$ref: '#/components/schemas/recommendScore'
|
|
2893
|
+
x-discriminator-fields:
|
|
2894
|
+
- objectID
|
|
2459
2895
|
trendingFacetHit:
|
|
2460
2896
|
type: object
|
|
2461
2897
|
description: Trending facet hit.
|
|
2462
2898
|
required:
|
|
2463
|
-
- _score
|
|
2464
2899
|
- facetName
|
|
2465
2900
|
- facetValue
|
|
2466
2901
|
properties:
|
|
@@ -2470,6 +2905,9 @@ components:
|
|
|
2470
2905
|
$ref: '#/components/schemas/facetName'
|
|
2471
2906
|
facetValue:
|
|
2472
2907
|
$ref: '#/components/schemas/facetValue'
|
|
2908
|
+
x-discriminator-fields:
|
|
2909
|
+
- facetName
|
|
2910
|
+
- facetValue
|
|
2473
2911
|
recommendationsHit:
|
|
2474
2912
|
oneOf:
|
|
2475
2913
|
- $ref: '#/components/schemas/recommendHit'
|
|
@@ -2613,6 +3051,21 @@ components:
|
|
|
2613
3051
|
$ref: '#/components/schemas/PromoteConsequence'
|
|
2614
3052
|
params:
|
|
2615
3053
|
$ref: '#/components/schemas/ParamsConsequence'
|
|
3054
|
+
timeRange:
|
|
3055
|
+
type: object
|
|
3056
|
+
additionalProperties: false
|
|
3057
|
+
properties:
|
|
3058
|
+
from:
|
|
3059
|
+
type: integer
|
|
3060
|
+
format: int64
|
|
3061
|
+
description: When the rule should start to be active, in Unix epoch time.
|
|
3062
|
+
until:
|
|
3063
|
+
type: integer
|
|
3064
|
+
format: int64
|
|
3065
|
+
description: When the rule should stop to be active, in Unix epoch time.
|
|
3066
|
+
required:
|
|
3067
|
+
- from
|
|
3068
|
+
- until
|
|
2616
3069
|
RecommendRule:
|
|
2617
3070
|
type: object
|
|
2618
3071
|
description: Recommend rule.
|
|
@@ -2636,12 +3089,17 @@ components:
|
|
|
2636
3089
|
description: >-
|
|
2637
3090
|
Description of the rule's purpose. This can be helpful for display in the Algolia dashboard.
|
|
2638
3091
|
|
|
2639
|
-
example:
|
|
3092
|
+
example: Boost on-sale items
|
|
2640
3093
|
enabled:
|
|
2641
3094
|
type: boolean
|
|
2642
3095
|
description: >-
|
|
2643
3096
|
Indicates whether to enable the rule. If it isn't enabled, it isn't applied at query time.
|
|
2644
3097
|
|
|
3098
|
+
validity:
|
|
3099
|
+
type: array
|
|
3100
|
+
description: Time periods when the rule is active.
|
|
3101
|
+
items:
|
|
3102
|
+
$ref: '#/components/schemas/timeRange'
|
|
2645
3103
|
taskID:
|
|
2646
3104
|
type: integer
|
|
2647
3105
|
format: int64
|
|
@@ -2670,12 +3128,50 @@ components:
|
|
|
2670
3128
|
parameters_page:
|
|
2671
3129
|
type: integer
|
|
2672
3130
|
minimum: 0
|
|
2673
|
-
description:
|
|
3131
|
+
description: >
|
|
3132
|
+
Requested page of the API response.
|
|
3133
|
+
|
|
3134
|
+
|
|
3135
|
+
Algolia uses `page` and `hitsPerPage` to control how search results are displayed ([paginated](https://www.algolia.com/doc/guides/building-search-ui/ui-and-ux-patterns/pagination/js/)).
|
|
3136
|
+
|
|
3137
|
+
|
|
3138
|
+
- `hitsPerPage`: sets the number of search results (_hits_) displayed per page.
|
|
3139
|
+
|
|
3140
|
+
- `page`: specifies the page number of the search results you want to retrieve. Page numbering starts at 0, so the first page is `page=0`, the second is `page=1`, and so on.
|
|
3141
|
+
|
|
3142
|
+
|
|
3143
|
+
For example, to display 10 results per page starting from the third page, set `hitsPerPage` to 10 and `page` to 2.
|
|
3144
|
+
|
|
2674
3145
|
parameters_hitsPerPage:
|
|
2675
3146
|
type: integer
|
|
2676
3147
|
minimum: 1
|
|
2677
3148
|
maximum: 1000
|
|
2678
|
-
description:
|
|
3149
|
+
description: >
|
|
3150
|
+
Maximum number of hits per page.
|
|
3151
|
+
|
|
3152
|
+
|
|
3153
|
+
Algolia uses `page` and `hitsPerPage` to control how search results are displayed ([paginated](https://www.algolia.com/doc/guides/building-search-ui/ui-and-ux-patterns/pagination/js/)).
|
|
3154
|
+
|
|
3155
|
+
|
|
3156
|
+
- `hitsPerPage`: sets the number of search results (_hits_) displayed per page.
|
|
3157
|
+
|
|
3158
|
+
- `page`: specifies the page number of the search results you want to retrieve. Page numbering starts at 0, so the first page is `page=0`, the second is `page=1`, and so on.
|
|
3159
|
+
|
|
3160
|
+
|
|
3161
|
+
For example, to display 10 results per page starting from the third page, set `hitsPerPage` to 10 and `page` to 2.
|
|
3162
|
+
|
|
3163
|
+
recommendUpdatedAtResponse:
|
|
3164
|
+
type: object
|
|
3165
|
+
description: Response, taskID, and update timestamp.
|
|
3166
|
+
additionalProperties: false
|
|
3167
|
+
required:
|
|
3168
|
+
- taskID
|
|
3169
|
+
- updatedAt
|
|
3170
|
+
properties:
|
|
3171
|
+
taskID:
|
|
3172
|
+
$ref: '#/components/schemas/taskID'
|
|
3173
|
+
updatedAt:
|
|
3174
|
+
$ref: '#/components/schemas/updatedAt'
|
|
2679
3175
|
responses:
|
|
2680
3176
|
BadRequest:
|
|
2681
3177
|
description: Bad request or request arguments.
|
|
@@ -2718,3 +3214,9 @@ components:
|
|
|
2718
3214
|
$ref: '#/components/schemas/taskID'
|
|
2719
3215
|
deletedAt:
|
|
2720
3216
|
$ref: '#/components/schemas/deletedAt'
|
|
3217
|
+
RecommendUpdatedAt:
|
|
3218
|
+
description: OK
|
|
3219
|
+
content:
|
|
3220
|
+
application/json:
|
|
3221
|
+
schema:
|
|
3222
|
+
$ref: '#/components/schemas/recommendUpdatedAtResponse'
|