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

Commit

Permalink
Release v1.3.0 (#244)
Browse files Browse the repository at this point in the history
* Bump openapi.yaml file

* Facet Search API (#246)

* Init specification

* Adjust spec files to PR number

* Fix content-type open-api

* Remove fix content-type

* Add the telemetry

* Update text/0246-facet-search-api.md

Co-authored-by: cvermand <33010418+bidoubiwa@users.noreply.github.com>

* Update text/0034-telemetry-policies.md

---------

Co-authored-by: Clément Renault <clement@meilisearch.com>
Co-authored-by: cvermand <33010418+bidoubiwa@users.noreply.github.com>

* Faceting Setting API - sortFacetValuesBy  (#247)

* init spec

* Add property description and open-api.yaml

* Removes future possibility

* Update the telemetry

* Update the error of the sortFacetValuesBy setting

---------

Co-authored-by: Clément Renault <clement@meilisearch.com>

* Vector Search - `EXPERIMENTAL` (#248)

* Init spec

* Fix the vector store fields

* Add an information on the invalid_search_vector error code

* Add an information on the invalid_vectors_field error codes

* Define the new max_vector_size analytic

* Update the open-api file with vector capabilities

* Apply suggestions from code review

* Update open-api.yaml

Co-authored-by: Maria Craig <marycraig90@gmail.com>

* Update open-api.yaml

Co-authored-by: Maria Craig <marycraig90@gmail.com>

* Update text/0118-search-api.md

Co-authored-by: Maria Craig <marycraig90@gmail.com>

* Update text/0061-error-format-and-definitions.md

Co-authored-by: Maria Craig <marycraig90@gmail.com>

---------

Co-authored-by: Kerollmops <clement@meilisearch.com>
Co-authored-by: Maria Craig <marycraig90@gmail.com>

* Tasks route total (#253)

* Update the tasks route info to add the total field

* Update the OpenApi of the tasks route

* Document the latest metrics improvements (#242)

* document the latest metrics improvements

* Update text/0174-metrics-api.md

Co-authored-by: Guillaume Mourier <guillaume@meilisearch.com>

* Update text/0174-metrics-api.md

Co-authored-by: Guillaume Mourier <guillaume@meilisearch.com>

* adds some details on the meilisearch_db_size metrics

* update the open api metrics smaple

* update a bad copy paste

* Update open-api.yaml

* prefix prometheus metrics by meilisearch_

* Introduce two new metrics

---------

Co-authored-by: Guillaume Mourier <guillaume@meilisearch.com>
Co-authored-by: Kerollmops <clement@meilisearch.com>

---------

Co-authored-by: Guillaume Mourier <guillaume@meilisearch.com>
Co-authored-by: Clément Renault <clement@meilisearch.com>
Co-authored-by: cvermand <33010418+bidoubiwa@users.noreply.github.com>
Co-authored-by: Clément Renault <renault.cle@gmail.com>
Co-authored-by: Tamo <tamo@meilisearch.com>
  • Loading branch information
6 people authored Jul 31, 2023
1 parent 3116739 commit 7376189
Show file tree
Hide file tree
Showing 13 changed files with 1,549 additions and 158 deletions.
506 changes: 472 additions & 34 deletions open-api.yaml

Large diffs are not rendered by default.

60 changes: 58 additions & 2 deletions text/0034-telemetry-policies.md

Large diffs are not rendered by default.

4 changes: 4 additions & 0 deletions text/0060-tasks-api.md
Original file line number Diff line number Diff line change
Expand Up @@ -564,6 +564,7 @@ The main drawback of this type of pagination is that it does not navigate within

| field | type | description |
|-------|------|--------------------------------------|
| total | integer | The total number of tasks matching the filter/query |
| limit | integer | Default `20`. |
| from | integer | The first task uid returned |
| next | integer - nullable | Represents the value to send in `from` to fetch the next slice of the results. The first item for the next slice starts at this exact number. When the returned value is null, it means that all the data have been browsed in the given order. |
Expand Down Expand Up @@ -602,6 +603,7 @@ This part demonstrates keyset paging in action on `/tasks`. The items `uid` rema
...,
}
],
"total": 1351,
"limit": 20,
"from": 1350,
"next": 1329
Expand Down Expand Up @@ -629,6 +631,7 @@ This part demonstrates keyset paging in action on `/tasks`. The items `uid` rema
...,
}
],
"total": 1330,
"limit": 50,
"from": 1329,
"next": 1278
Expand Down Expand Up @@ -656,6 +659,7 @@ This part demonstrates keyset paging in action on `/tasks`. The items `uid` rema
...,
}
],
"total": 20,
"limit": 20,
"from": 20,
"next": null
Expand Down
201 changes: 200 additions & 1 deletion text/0061-error-format-and-definitions.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ Errors can be returned in two different ways: `Synchronous` or `Asynchronous`.

This error code is generic. Whenever an error is thrown for a resource field, a clear and precise error code should be determined to guide the user efficiently.

E.g. Sending an unknow field for a resource raises a generic `bad_request` error.
E.g. Sending an unknown field for a resource raises a generic `bad_request` error.

### Error Definition

Expand Down Expand Up @@ -1474,6 +1474,31 @@ HTTP Code: `400 Bad Request`

---

## invalid_search_vector

`Synchronous`

### Context

This error occurs for the listed reasons:
- if a value with a different type than `Array of Float` or `null` for `vector` is specified.
- if the vector length differs from the documents `_vectors` length.

### Error Definition

HTTP Code: `400 Bad Request`

```json
{
"message": "`:deserr_helper`",
"code": "invalid_search_vector",
"type": "invalid_request",
"link": "https://docs.meilisearch.com/errors#invalid_search_vector"
}
```

---

## invalid_search_offset

`Synchronous`
Expand Down Expand Up @@ -1808,6 +1833,123 @@ HTTP Code: `400 Bad Request`
}
```

## invalid_search_attributes_to_search_on

`Synchronous`

### Context

This error occurs if a value with a different type than `Array of String`(POST), `String`(GET) or `null` and other than attributes names contained in the settings `searchableAttributes` as a value for `attributesToSearchOn` is specified.

### Error Definition

HTTP Code: `400 Bad Request`

```json
{
"message": "`:deserr_helper`",
"code": "invalid_search_attributes_to_search_on",
"type": "invalid_request",
"link": "https://docs.meilisearch.com/errors#invalid_search_attributes_to_search_on"
}
```

#### Variant: one of the values is not part of the settings `searchableAttributes` list

```json
{
"message": "Attribute `:value` is not searchable. Available searchable attributes are: `:searchableAttributes`.",
"code": "invalid_search_attributes_to_search_on",
"type": "invalid_request",
"link": "https://docs.meilisearch.com/errors#invalid_search_attributes_to_search_on"
}
```

#### Variant: one of the values is not part of the settings `searchableAttributes` list and not all of the `searchableAttributes` are displayable

```json
{
"message": "Attribute `:value` is not searchable. Available searchable attributes are: `:DisplayableSearchableAttributes, <..hidden-attributes>`.",
"code": "invalid_search_attributes_to_search_on",
"type": "invalid_request",
"link": "https://docs.meilisearch.com/errors#invalid_search_attributes_to_search_on"
}
```

---

## missing_facet_search_facet_name

`Synchronous`

### Context

This error occurs if `facetName` isn't specified when making a facet search call.

### Error Definition

HTTP Code: `400 Bad Request`

```json
{
"message": "`:deserr_helper`",
"code": "missing_facet_search_facet_name",
"type": "invalid_request",
"link": "https://docs.meilisearch.com/errors#missing_facet_search_facet_name"
}
```

---

## invalid_facet_search_facet_name

`Synchronous`

### Context

This errors occurs when the provided value for `facetName`:

- Is not a string
- Is not defined in the `filterableAttributes` index setting

### Error Definition

HTTP Code: `400 Bad Request`

```json
{
"message": "`:deserr_helper`",
"code": "invalid_facet_search_facet_name",
"type": "invalid_request",
"link": "https://docs.meilisearch.com/errors#invalid_facet_search_facet_name"
}
```

---

## invalid_facet_search_facet_query

`Synchronous`

### Context

This errors occurs when the provided value for `facetQuery`:

- Is not a string or null

### Error Definition

HTTP Code: `400 Bad Request`

```json
{
"message": "`:deserr_helper`",
"code": "invalid_facet_search_facet_query",
"type": "invalid_request",
"link": "https://docs.meilisearch.com/errors#invalid_facet_search_facet_query"
}
```

---

## invalid_document_geo_field
Expand Down Expand Up @@ -1863,6 +2005,38 @@ These errors occurs when the `_geo` field of a document payload is not valid. Ei

---

## invalid_document_vectors_field

`Asynchronous`

### Context

This error occurs when the `_vectors` field of a document payload is not valid either due to the type of it or the number of dimensions.

### Error Definition

#### Variant: `_vectors` field value type is invalid

```json
{
"message": "The `_vectors` field in the document with the id: `:documentId` is not an array. Was expecting an array of floats or an array of arrays of floats but instead got `:field`",
"code": "invalid_document_vectors_type",
"type": "invalid_request",
"link": "https://docs.meilisearch.com/errors#invalid_document_vectors_type"
}
```

#### Variant: Number of dimensions is not correct

```json
{
"message": "Invalid vector dimensions: expected: `:expected`, found: `:found`.",
...
}
```

---

## payload_too_large

`Synchronous`
Expand Down Expand Up @@ -2512,6 +2686,31 @@ HTTP Code: `400 Bad Request`

- `:payloadType` is e.g. `json`, `ndjson`, `csv`

## feature_not_enabled

`Synchronous`

### Context

This error occurs when a request was made using an [experimental feature](./0193-experimental-features.md) that wasn't enabled.

### Error definition

HTTP Code: `400 Bad Request`

```json
{
"message": "{:action} requires enabling the `{:featureName}` experimental feature. See {:productDiscussion}",
"code": "feature_not_enabled",
"type": "invalid_request",
"link": "https://docs.meilisearch.com/errors#feature_not_enabled"
}
```

- `:action` is the action that is not permitted without enabling the feature, e.g. "Getting the metrics"
- `:featureName` is the name of the feature that needs enabling, e.g. "Prometheus Metrics"
- `:productDiscussion` is the link to the product discussion that is tracking the feature

---

# internal type
Expand Down
2 changes: 2 additions & 0 deletions text/0085-api-keys.md
Original file line number Diff line number Diff line change
Expand Up @@ -335,6 +335,8 @@ Create an API key.
| keys.create | Provides access to `POST` `/keys` route. |
| keys.update | Provides access to `PATCH` `/keys` routes. |
| keys.delete | Provides access to `DELETE` `/keys` routes. |
| experimental.get | Provides access to `GET` `/experimental-features` routes. |
| experimental.update | Provides access to `PATCH` `/experimental-features` routes. |

###### 3.2.4.4.3. Response Definition

Expand Down
Loading

0 comments on commit 7376189

Please sign in to comment.