---
title: "Streaming API v2: Search"
description: "Search channels, movies and series by name, by relevance or by the usual sort orders."
---

## `GET search`

Parameters: `q` (required: at most 100 bytes and at least 2 characters once
case, accents and spaces are folded), `type` (`all` default,
`channel`, `movie`, `series`), `category_id`, `offset`, `limit`, `sort_by`,
`sort_order`, `fields`, `images`. Matches the name, ignoring case, accents and
repeated spaces, tabs or line breaks (`musica` finds `Música`, `world cup`
finds `World  Cup`).

Without `sort_by` (or with `sort_by=relevance`, capability
`search_relevance`) results come by relevance: exact name, then names that
start with the query, then names with a word that starts with it, then names
that merely contain it; ties by name (natural order, a whole word before a
longer one: `Cup Final` before `Cupcake`), then channel, movie, series, then
the panel's order (example `search-relevance.json`). `sort_by=name`, `added`
or `rating` sort as in the lists. `relevance` only applies to `search`; other
endpoints ignore it.

```json
{
  "query": "musica", "type": "all", "totals": { "channel": 1, "movie": 0, "series": 0 },
  "total": 1, "offset": 0, "limit": 50, "next_offset": null,
  "items": [ { "id": 150, "type": "channel", "num": 3, "name": "Música Clásica", "…": "…" } ]
}
```

Items have the shape of their list (`live-channels`, `vod-movies`, `series`).
`totals` counts the matches of each type before pagination. Errors:
`invalid_parameter`.
