Skip to content
This repository has been archived by the owner on Mar 21, 2024. It is now read-only.

Multi Search API #225

Merged
merged 15 commits into from
Apr 3, 2023
Merged

Multi Search API #225

merged 15 commits into from
Apr 3, 2023

Conversation

dureuill
Copy link
Contributor

@dureuill dureuill commented Feb 27, 2023

🤖 API Diff

Summary

Specify the new /multi-search route.


Changes

  • Add multi-search-api text
  • Update HTTP codes returned in case of index_not_found error since it triggers a 400 Bad Request in case of non-existing index in the post of multi-search
  • Update telemetry policies to include the information returned by multi-search
  • Update OpenAPI

Out Of Scope

N/A


Attention To Reviewers

  • I tried my best to update the OpenAPI specification, but I'm not experienced with this format nor with $ref, so I could have broken something inadervently

Misc

  • Update OpenAPI specification file (if needed; Apply the OpenApi label)
  • Update telemetry datapoints (if needed; Apply the Telemetry label)

@dureuill dureuill added Implemented Feature specification has been implemented. OpenAPI Update OpenAPI specification. Telemetry Update the telemetry collect. Q1:2023 labels Feb 27, 2023
@github-actions
Copy link

github-actions bot commented Feb 27, 2023

🤖 API change detected:

Added (1)

  • POST /multi-search

View documentation diff

Powered by Bump

@gmourier gmourier added Ready For Review Feature specification must be reviewed. v1.1.0 labels Feb 27, 2023
@gmourier gmourier changed the title Multi search Multi Search API Feb 27, 2023
@gmourier gmourier mentioned this pull request Feb 27, 2023
1 task
Copy link
Member

@gmourier gmourier left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank @dureuill, this is a first review, adding some precisions.

I've also added two errors in the listing. I'm sure about the index_not_found; can you confirm for the invalid_index_uid one? Thanks!

open-api.yaml Outdated Show resolved Hide resolved
open-api.yaml Outdated Show resolved Hide resolved
open-api.yaml Outdated Show resolved Hide resolved
text/0061-error-format-and-definitions.md Show resolved Hide resolved
text/0192-multi-search-api.md Outdated Show resolved Hide resolved
text/0192-multi-search-api.md Show resolved Hide resolved
@dureuill
Copy link
Contributor Author

can you confirm for the invalid_index_uid one? Thanks!

yes it's in :)

open-api.yaml Outdated Show resolved Hide resolved
text/0192-multi-search-api.md Outdated Show resolved Hide resolved
text/0192-multi-search-api.md Outdated Show resolved Hide resolved
text/0192-multi-search-api.md Outdated Show resolved Hide resolved
open-api.yaml Outdated Show resolved Hide resolved
Copy link
Member

@gmourier gmourier left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If it breaks the open-api validation after merging those changes, I will do a proper commit @dureuill

open-api.yaml Outdated Show resolved Hide resolved
open-api.yaml Outdated Show resolved Hide resolved
text/0192-multi-search-api.md Outdated Show resolved Hide resolved
text/0192-multi-search-api.md Outdated Show resolved Hide resolved
text/0192-multi-search-api.md Outdated Show resolved Hide resolved
Copy link
Member

@gmourier gmourier left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Other than that double newline character, it looks great to me @dureuill Thank you! 🧱

Copy link
Contributor

@bidoubiwa bidoubiwa left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔥 LGTM 🔥

@gmourier gmourier removed the Ready For Review Feature specification must be reviewed. label Mar 3, 2023
Copy link
Contributor

@maryamsulemani97 maryamsulemani97 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🦢

@brunoocasali
Copy link
Member

The bump diff link is not working. Is it only for me?

@gmourier
Copy link
Member

gmourier commented Mar 8, 2023

The bump diff link is not working. Is it only for me?

It was working last week; I will check that asap. Thank you @brunoocasali

meili-bors bot added a commit to meilisearch/meilisearch-js that referenced this pull request Mar 15, 2023
1458: Add multi search method of Meilisearch v1.1 r=bidoubiwa a=bidoubiwa

Introduces the `client.multiSearch()` method as per the [specifications](meilisearch/specifications#225)

SDK requirements: meilisearch/integration-guides#251

1459: Add facetStats type in searchResponse for MS v1.1.0 r=bidoubiwa a=bidoubiwa

As per [the specification](meilisearch/specifications#224)

SDK requirements: meilisearch/integration-guides#251

A new response field, `facetStats` is returned when `facets` is used in the search parameters. It contains the min max value of facets that contain numeric values.

I added some test `@brunoocasali` to ensure my typing is correct





Co-authored-by: cvermand <[email protected]>
Co-authored-by: Charlotte Vermandel <[email protected]>
meili-bors bot added a commit to meilisearch/meilisearch-js that referenced this pull request Mar 15, 2023
1458: Add multi search method of Meilisearch v1.1 r=bidoubiwa a=bidoubiwa

Introduces the `client.multiSearch()` method as per the [specifications](meilisearch/specifications#225)

SDK requirements: meilisearch/integration-guides#251

Co-authored-by: cvermand <[email protected]>
@gmourier gmourier merged commit 518d005 into release-v1.1.0 Apr 3, 2023
@gmourier gmourier deleted the multi-search branch April 3, 2023 14:18
gmourier added a commit that referenced this pull request Apr 3, 2023
* Bump API version

* Metrics API — Introduce a `/metrics` route for observability / monitoring purposes (#174)

* init spec for /metrics

* Rename spec filename and add description for metrics

* update metrics name and type col in the metrics table; add auth errors

* Add --enable-metrics-route to instance-options.md specification

* Precise metrics

* update open-api.yml

* Add telemetry instance property

* Mention metrics route on stats.get action

* Add  action

* Precise  action description

* Rephrase future possibility

* Add MEILI_ENABLE_METRICS_ROUTE

* rename all the cli parameter to the experimental variant

* Update text/0174-metrics-api.md

Co-authored-by: Guillaume Mourier <[email protected]>

* Update open-api.yaml

Co-authored-by: Guillaume Mourier <[email protected]>

* Update text/0085-api-keys.md

Co-authored-by: Guillaume Mourier <[email protected]>

* Apply suggestions from code review

Co-authored-by: Tamo <[email protected]>

---------

Co-authored-by: Tamo <[email protected]>

* API Keys - Introduce `*` wildcard char at the last position to express access to multiple indexes starting with the same string (#189)

* Bump open-api spec

* Precise that the * wildcard char can be used at the last position to match multiple indexes starting with the same string

* Update future possibilities

* Update the index wildcard pattern error message

---------

Co-authored-by: Clément Renault <[email protected]>

* Documents API — Support a csv delimiter customization (#221)

* specify the support of the csv-delimiter

* Apply suggestions from code review

* get rid of the last 'future possibility' that is being described in this PR

* Update openAPI specification

---------

Co-authored-by: Guillaume Mourier <[email protected]>

* Update the geo-search spec to mention the fact that null is a valid geo field (#222)

* GeoSearch — Add the `_geoBoundingBox` built-in filter (#223)

* Add geoBoundingBox built-in filter description

* Add missing parts

* Update text/0059-geo-search.md

Co-authored-by: Tamo <[email protected]>

* Replace the top left / bottom right signature to a top right / bottom left signature

---------

Co-authored-by: Tamo <[email protected]>

* Search API — Add `facetStats` description (#224)

* update search-api.md

* rephrase

* update open-api.yml

* rephrase, add example on open-api.yml

* Add examples

* fix

* Update text/0118-search-api.md

Co-authored-by: Louis Dureuil <[email protected]>

* rephrase

* Clarify that facet stats are for all search results

---------

Co-authored-by: Louis Dureuil <[email protected]>

* Multi Search API (#225)

* Add multi-search spec

* Change possible HTTP return codes for index_not_found

* Add multi-search to openAPI

* Update telemetry

* openAPI: shorter summary for multi-search

* openAPI: attempt to remove superfluous "values" field in multisearch request/response

* Apply review suggestions for openAPI

Co-authored-by: Guillaume Mourier <[email protected]>

* Apply review suggestions for multi search API

Co-authored-by: Guillaume Mourier <[email protected]>

* Add queries/results keys to openAPI examples

Co-authored-by: Guillaume Mourier <[email protected]>

* fix indent

* Apply review suggestions for multi search API

Co-authored-by: cvermand <[email protected]>

* OpenAPI: Change summary to `Multi Search`

* use backticks instead of ticks in multi search API example

* Apply review suggestions for multi search API

Co-authored-by: Maryam <[email protected]>

* remove superfluous newline from telemetry file

Co-authored-by: Guillaume Mourier <[email protected]>

---------

Co-authored-by: Guillaume Mourier <[email protected]>
Co-authored-by: cvermand <[email protected]>
Co-authored-by: Maryam <[email protected]>

* Add small blurb on index count / max size (#226)

---------

Co-authored-by: Tamo <[email protected]>
Co-authored-by: Clément Renault <[email protected]>
Co-authored-by: Louis Dureuil <[email protected]>
Co-authored-by: cvermand <[email protected]>
Co-authored-by: Maryam <[email protected]>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Implemented Feature specification has been implemented. OpenAPI Update OpenAPI specification. Q1:2023 Telemetry Update the telemetry collect. v1.1.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants