# API discover

> Discover listează filme la GET /3/discover/movie și seriale TV la GET /3/discover/tv, filtrate și sortate după parametrii pe care îi alegi: gen, distribuție, echipă, companie, cuvânt-cheie, date, evaluare, voturi, durată, limbă și furnizor de streaming. JSON-ul se potrivește cu TMDB v3, iar rezultatele sunt ținute în cache 30 de minute.

## Endpoint

`GET /3/discover/movie`

```bash
curl "https://api.amodb.dev/3/discover/movie?with_genres=878&sort_by=vote_average.desc&vote_count.gte=1000" \
  -H "Authorization: Bearer $AMODB_KEY"
```

Răspuns:

```json
{
  "page": 1,
  "results": [
    {
      "adult": false,
      "backdrop_path": "/wLWvHcQz7N13DvSOTV7bHgwGXpT.jpg",
      "genre_ids": [
        878,
        12
      ],
      "id": 687163,
      "original_language": "en",
      "original_title": "Project Hail Mary",
      "overview": "Science teacher Ryland Grace wakes up on a spaceship light years from home with no recollection of who he is or how he got there. As his memory returns, he begins to uncover his mission: solve the riddle of the mysterious substance causing...",
      "popularity": 101.0341,
      "poster_path": "/yihdXomYb5kTeSivtFndMy5iDmf.jpg",
      "release_date": "2026-03-15",
      "title": "Project Hail Mary",
      "video": false,
      "vote_average": 8.635,
      "vote_count": 8355
    },
    {
      "adult": false,
      "backdrop_path": "/Ys8UIGWJpd2TMuQk8fU77W3mBz.jpg",
      "genre_ids": [
        12,
        18,
        878
      ],
      "id": 157336,
      "original_language": "en",
      "original_title": "Interstellar",
      "overview": "The adventures of a group of explorers who make use of a newly discovered wormhole to surpass the limitations on human space travel and conquer the vast distances involved in an interstellar voyage.",
      "popularity": 74.3949,
      "poster_path": "/yQvGrMoipbRoddT0ZR8tPoR7NfX.jpg",
      "release_date": "2014-11-04",
      "title": "Interstellar",
      "video": false,
      "vote_average": 8.491,
      "vote_count": 41529
    },
    {
      "adult": false,
      "backdrop_path": "/tanwf7KOwQ6dxZzehKsXkffIJOd.jpg",
      "genre_ids": [
        878,
        28,
        12
      ],
      "id": 969681,
      "original_language": "en",
      "original_title": "Spider-Man: Brand New Day",
      "overview": "Fighting crime full-time as Spider-Man in a world that doesn't remember him—and the pressure of seeing his old friends move on without him—sparks a change in Peter Parker he may not have the power to control. But that transformation might a...",
      "popularity": 663.5004,
      "poster_path": "/bjiS5ipwxb9JFy3XRRN4OAilSeX.jpg",
      "release_date": "2026-07-29",
      "title": "Spider-Man: Brand New Day",
      "video": false,
      "vote_average": 8.466,
      "vote_count": 5714
    }
  ],
  "total_pages": 39,
  "total_results": 772
}
```

## Descoperă filme

`GET /3/discover/movie` întoarce o listă paginată de filme care se potrivesc cu fiecare filtru trimis, în ordinea pe care o alegi. Este endpoint-ul pentru pagini de răsfoire, liste „cele mai bune” și recomandări pe fațete și nu cere text `query`. Când ai un titlu tastat de un utilizator, folosește în schimb [căutare](https://amodb.dev/ro/search/).

Exemplul listează filme științifico-fantastice (ID de gen `878`) cu cel puțin 1000 de voturi, cele mai bine cotate primele.

```bash
curl -sSf --get "https://api.amodb.dev/3/discover/movie" \
  --data-urlencode "with_genres=878" \
  --data-urlencode "sort_by=vote_average.desc" \
  --data-urlencode "vote_count.gte=1000" \
  --data-urlencode "language=en-US" \
  -H "Authorization: Bearer $AMODB_KEY"
```

```js
const params = new URLSearchParams({
  with_genres: '878',
  sort_by: 'vote_average.desc',
  'vote_count.gte': '1000',
  language: 'en-US',
});
const res = await fetch(`https://api.amodb.dev/3/discover/movie?${params}`, {
  headers: { Authorization: `Bearer ${process.env.AMODB_KEY}` },
});
if (!res.ok) throw new Error(`amodb returned ${res.status}`);
const { results, total_pages } = await res.json();
console.log(`page 1 of ${total_pages}`);
for (const m of results.slice(0, 5)) console.log(m.vote_average, m.title, m.release_date);
```

```python
import os
import requests

r = requests.get(
    "https://api.amodb.dev/3/discover/movie",
    params={
        "with_genres": 878,
        "sort_by": "vote_average.desc",
        "vote_count.gte": 1000,
        "language": "en-US",
    },
    headers={"Authorization": f"Bearer {os.environ['AMODB_KEY']}"},
    timeout=10,
)
r.raise_for_status()
data = r.json()
print("page 1 of", data["total_pages"])
for m in data["results"][:5]:
    print(m["vote_average"], m["title"], m["release_date"])
```

```php
<?php
$url = 'https://api.amodb.dev/3/discover/movie?' . http_build_query([
    'with_genres' => 878,
    'sort_by' => 'vote_average.desc',
    'vote_count.gte' => 1000,
    'language' => 'en-US',
]);
$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_TIMEOUT => 10,
    CURLOPT_HTTPHEADER => ['Authorization: Bearer ' . getenv('AMODB_KEY')],
]);
$body = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($status !== 200) {
    throw new RuntimeException("amodb returned $status");
}
$data = json_decode($body, true);
foreach (array_slice($data['results'], 0, 5) as $m) {
    echo $m['vote_average'], ' ', $m['title'], PHP_EOL;
}
```

```go
package main

import (
	"encoding/json"
	"fmt"
	"net/http"
	"net/url"
	"os"
	"time"
)

type Page struct {
	TotalPages int `json:"total_pages"`
	Results    []struct {
		Title       string  `json:"title"`
		ReleaseDate string  `json:"release_date"`
		VoteAverage float64 `json:"vote_average"`
	} `json:"results"`
}

func main() {
	q := url.Values{
		"with_genres":    {"878"},
		"sort_by":        {"vote_average.desc"},
		"vote_count.gte": {"1000"},
		"language":       {"en-US"},
	}
	req, _ := http.NewRequest("GET", "https://api.amodb.dev/3/discover/movie?"+q.Encode(), nil)
	req.Header.Set("Authorization", "Bearer "+os.Getenv("AMODB_KEY"))
	client := &http.Client{Timeout: 10 * time.Second}
	res, err := client.Do(req)
	if err != nil {
		panic(err)
	}
	defer res.Body.Close()
	if res.StatusCode != http.StatusOK {
		panic(res.Status)
	}
	var p Page
	if err := json.NewDecoder(res.Body).Decode(&p); err != nil {
		panic(err)
	}
	fmt.Println("pages:", p.TotalPages)
	for _, m := range p.Results {
		fmt.Println(m.VoteAverage, m.Title, m.ReleaseDate)
	}
}
```

### Parametri

| Parametru                                              | Loc        | Obligatoriu          | Descriere                                                                                                                                                                                                                                                                                                                                               |
| ------------------------------------------------------ | ---------- | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `api_key`                                              | interogare | una dintre cele două | Cheia ta. Folosește-o pe aceasta sau antetul `Authorization: Bearer`.                                                                                                                                                                                                                                                                                   |
| `sort_by`                                              | interogare | nu                   | Câmp și direcție, precum `vote_average.desc`. Câmpuri: `popularity`, `vote_average`, `vote_count`, `primary_release_date`, `revenue`, `title`, `original_title`, fiecare cu `.asc` sau `.desc`. `title` și `original_title` sortează amândouă după titlul original. O valoare necunoscută revine la `popularity.desc`, care este și valoarea implicită. |
| `with_genres`                                          | interogare | nu                   | ID-uri de gen. Virgula înseamnă AND, bara verticală înseamnă OR.                                                                                                                                                                                                                                                                                        |
| `without_genres`                                       | interogare | nu                   | ID-uri de gen de exclus.                                                                                                                                                                                                                                                                                                                                |
| `with_cast`, `with_crew`                               | interogare | nu                   | ID-uri de persoane. Găsește-le cu [căutare](https://amodb.dev/ro/search/).                                                                                                                                                                                                                                                                              |
| `with_people`                                          | interogare | nu                   | ID-uri de persoane care apar ca distribuție sau echipă.                                                                                                                                                                                                                                                                                                 |
| `with_companies`, `without_companies`                  | interogare | nu                   | ID-uri de companii de producție de cerut sau de exclus. Virgula și bara verticală funcționează ca la `with_genres`.                                                                                                                                                                                                                                     |
| `with_keywords`, `without_keywords`                    | interogare | nu                   | ID-uri de cuvinte-cheie de cerut sau de exclus. Vezi [cuvinte-cheie](https://amodb.dev/ro/keywords/).                                                                                                                                                                                                                                                   |
| `with_origin_country`                                  | interogare | nu                   | Cod de țară de producție din 2 litere majuscule, precum `FR`.                                                                                                                                                                                                                                                                                           |
| `primary_release_year`                                 | interogare | nu                   | An din patru cifre al datei principale de lansare.                                                                                                                                                                                                                                                                                                      |
| `year`                                                 | interogare | nu                   | An din patru cifre. Se potrivește cu orice dată de lansare din acel an, deci întoarce mai multe titluri decât `primary_release_year`.                                                                                                                                                                                                                   |
| `primary_release_date.gte`, `primary_release_date.lte` | interogare | nu                   | Limita inferioară și superioară pentru data principală de lansare, `YYYY-MM-DD`.                                                                                                                                                                                                                                                                        |
| `release_date.gte`, `release_date.lte`                 | interogare | nu                   | Limita inferioară și superioară pentru orice dată de lansare din orice țară, `YYYY-MM-DD`.                                                                                                                                                                                                                                                              |
| `region`                                               | interogare | nu                   | Cod de țară din 2 litere majuscule. Înlocuiește `release_date` din fiecare rezultat cu data din acea țară. Nu elimină titluri.                                                                                                                                                                                                                          |
| `certification_country`, `certification`               | interogare | nu                   | Filtru de clasificare pe vârste, de exemplu `US` și `PG`. `certification` este ignorat fără o țară. `certification.gte` și `certification.lte` dau un interval.                                                                                                                                                                                         |
| `vote_average.gte`, `vote_average.lte`                 | interogare | nu                   | Scorul mediu minim și maxim, de la 0 la 10.                                                                                                                                                                                                                                                                                                             |
| `vote_count.gte`, `vote_count.lte`                     | interogare | nu                   | Numărul minim și maxim de voturi.                                                                                                                                                                                                                                                                                                                       |
| `with_runtime.gte`, `with_runtime.lte`                 | interogare | nu                   | Durata minimă și maximă în minute.                                                                                                                                                                                                                                                                                                                      |
| `with_original_language`                               | interogare | nu                   | Limba originală ca cod din 2 litere, precum `fr` sau `ko`.                                                                                                                                                                                                                                                                                              |
| `with_watch_providers`                                 | interogare | nu                   | ID-uri de furnizori. Cere `watch_region` și este ignorat fără el. ID-urile vin de la [genuri și liste de referință](https://amodb.dev/ro/genres/).                                                                                                                                                                                                      |
| `watch_region`                                         | interogare | nu                   | Cod de țară din 2 litere majuscule pentru disponibilitatea furnizorilor.                                                                                                                                                                                                                                                                                |
| `include_adult`                                        | interogare | nu                   | Acceptat și ignorat. Titlurile pentru adulți nu sunt întoarse niciodată.                                                                                                                                                                                                                                                                                |
| `language`                                             | interogare | nu                   | Etichetă TMDB precum `en-US` sau `pl-PL`. Sunt servite 14 limbi de bază. Implicit `en-US`.                                                                                                                                                                                                                                                              |
| `page`                                                 | interogare | nu                   | Numărul paginii de la 1 la 500. Implicit 1.                                                                                                                                                                                                                                                                                                             |

### Câmpurile răspunsului

| Câmp                                       | Tip                     | Observații                                                                                                                                                     |
| ------------------------------------------ | ----------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page`, `total_pages`, `total_results`     | număr întreg            | Paginarea pentru acest set de filtre. Filtrele largi raportează cel mult 1001 de pagini și 20001 de rezultate, dar pot fi citite doar paginile de la 1 la 500. |
| `results`                                  | array                   | Până la 20 de filme. Gol când niciun titlu nu se potrivește cu toate filtrele.                                                                                 |
| `id`                                       | număr întreg            | ID-ul filmului pentru [detalii film](https://amodb.dev/ro/movies/).                                                                                            |
| `title`, `original_title`, `overview`      | șir                     | Text localizat și titlul original.                                                                                                                             |
| `original_language`                        | șir                     | Codul din două litere al limbii în care a fost făcut filmul.                                                                                                   |
| `release_date`                             | șir                     | `YYYY-MM-DD`.                                                                                                                                                  |
| `genre_ids`                                | array de numere întregi | Doar ID-uri. Mapează-le la nume cu `/genre/movie/list`.                                                                                                        |
| `poster_path`, `backdrop_path`             | șir sau null            | Se adaugă la `https://img.amodb.dev/t/p/{size}`.                                                                                                               |
| `vote_average`, `vote_count`, `popularity` | număr                   | Valori de scor și de clasament.                                                                                                                                |
| `adult`, `video`                           | boolean                 | `adult` este mereu `false`.                                                                                                                                    |

### Exemplu de răspuns

```json
{
  "page": 1,
  "results": [
    {
      "adult": false,
      "backdrop_path": "/wLWvHcQz7N13DvSOTV7bHgwGXpT.jpg",
      "genre_ids": [878, 12],
      "id": 687163,
      "original_language": "en",
      "original_title": "Project Hail Mary",
      "overview": "Science teacher Ryland Grace wakes up on a spaceship light years from home with no recollection of who he i...",
      "popularity": 101.0341,
      "poster_path": "/yihdXomYb5kTeSivtFndMy5iDmf.jpg",
      "release_date": "2026-03-15",
      "title": "Project Hail Mary",
      "video": false,
      "vote_average": 8.635,
      "vote_count": 8354
    },
    {
      "adult": false,
      "backdrop_path": "/Ys8UIGWJpd2TMuQk8fU77W3mBz.jpg",
      "genre_ids": [12, 18, 878],
      "id": 157336,
      "original_language": "en",
      "original_title": "Interstellar",
      "overview": "The adventures of a group of explorers who make use of a newly discovered wormhole to surpass the limitatio...",
      "popularity": 74.3949,
      "poster_path": "/yQvGrMoipbRoddT0ZR8tPoR7NfX.jpg",
      "release_date": "2014-11-04",
      "title": "Interstellar",
      "video": false,
      "vote_average": 8.491,
      "vote_count": 41526
    },
    {
      "adult": false,
      "backdrop_path": "/tanwf7KOwQ6dxZzehKsXkffIJOd.jpg",
      "genre_ids": [878, 28, 12],
      "id": 969681,
      "original_language": "en",
      "original_title": "Spider-Man: Brand New Day",
      "overview": "Fighting crime full-time as Spider-Man in a world that doesn't remember him...",
      "popularity": 663.5004,
      "poster_path": "/bjiS5ipwxb9JFy3XRRN4OAilSeX.jpg",
      "release_date": "2026-07-29",
      "title": "Spider-Man: Brand New Day",
      "video": false,
      "vote_average": 8.468,
      "vote_count": 5684
    }
  ],
  "total_pages": 39,
  "total_results": 772
}
```

Răspunsul a fost preluat de la API-ul live pentru cererea din exemplu. Este tăiat la 3 din cele 20 de intrări de pe pagina 1, iar șirurile `overview` lungi sunt scurtate.

## Combină filtrele

Parametrii separați se combină cu AND. În interiorul unui parametru, virgula înseamnă AND, iar bara verticală înseamnă OR. Într-un URL brut bara se scrie `%7C`, iar clienții care codifică valorile interogării fac asta pentru tine.

| Scop                                               | Cerere                                                                                    |
| -------------------------------------------------- | ----------------------------------------------------------------------------------------- |
| Cele mai bine cotate filme SF cu suficiente voturi | `/discover/movie?with_genres=878&sort_by=vote_average.desc&vote_count.gte=1000`           |
| Acțiune sau aventură                               | `/discover/movie?with_genres=28%7C12`                                                     |
| Acțiune, dar nu animație                           | `/discover/movie?with_genres=28&without_genres=16`                                        |
| Un actor cu un regizor                             | `/discover/movie?with_cast=6193&with_crew=525`                                            |
| Filme lungi dintr-un an                            | `/discover/movie?primary_release_year=2010&with_runtime.gte=150`                          |
| Lansări dintr-o fereastră de date                  | `/discover/movie?primary_release_date.gte=2026-10-01&primary_release_date.lte=2026-10-31` |
| Filme dintr-o singură limbă originală              | `/discover/movie?with_original_language=fr`                                               |
| Streaming într-o țară                              | `/discover/movie?with_watch_providers=8&watch_region=US`                                  |
| Clasificate R în SUA                               | `/discover/movie?certification_country=US&certification=R`                                |
| Fără un cuvânt-cheie                               | `/discover/movie?with_keywords=818&without_keywords=4565`                                 |

`with_original_language` filtrează după limba în care a fost făcut un titlu și acceptă coduri din afara celor 14 limbi servite, de exemplu `ja` sau `ko`. Parametrul `language` decide în continuare limba textului primit înapoi. În rândul cu furnizorul, `8` este Netflix. Citește ID-urile furnizorilor de la `/watch/providers/movie`.

## Descoperă seriale TV

`GET /3/discover/tv` folosește același plic și aceeași paginare. Intrările conțin `name`, `original_name`, `first_air_date`, `origin_country` și `genre_ids`, iar ID-urile de gen vin de la `/genre/tv/list`, care conține ID-urile TV îmbinate, precum `10765` pentru Sci-Fi and Fantasy.

| Parametru                                                                                              | Descriere                                                                                                                                                                                  |
| ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `first_air_date.gte`, `first_air_date.lte`                                                             | Limita inferioară și superioară pentru prima dată de difuzare, `YYYY-MM-DD`.                                                                                                               |
| `first_air_date_year`                                                                                  | An din patru cifre al primei date de difuzare.                                                                                                                                             |
| `air_date.gte`, `air_date.lte`                                                                         | Limita inferioară și superioară pentru datele în care un serial are episoade în difuzare, `YYYY-MM-DD`.                                                                                    |
| `with_networks`                                                                                        | ID-uri de rețele. Găsește-le la [companii și rețele](https://amodb.dev/ro/companies-networks/).                                                                                            |
| `with_status`                                                                                          | Cod numeric de stare: `0` serial care revine, `2` în producție, `3` încheiat, `4` anulat.                                                                                                  |
| `with_type`                                                                                            | Tip numeric de serial: `0` documentar, `1` știri, `2` miniserial, `3` reality, `4` cu scenariu, `5` talk show, `6` video.                                                                  |
| `sort_by`                                                                                              | `popularity`, `vote_average`, `vote_count`, `first_air_date`, `name` sau `original_name`, fiecare cu `.asc` sau `.desc`. `name` și `original_name` sortează amândouă după numele original. |
| `with_genres`, `without_genres`, `with_companies`, `with_keywords`, `without_keywords`                 | Aceleași reguli ca la filme.                                                                                                                                                               |
| `vote_average.gte`, `vote_count.gte`, `with_runtime.gte`, `with_runtime.lte`, `with_original_language` | Aceleași reguli ca la filme.                                                                                                                                                               |
| `with_watch_providers`, `watch_region`, `language`, `page`                                             | Aceleași reguli ca la filme.                                                                                                                                                               |

O cerere precum `/discover/tv?first_air_date.gte=2025-01-01&with_genres=18&vote_count.gte=100&sort_by=popularity.desc` listează serialele dramă care au început în 2025 sau mai târziu. Citește un rezultat în detaliu la [seriale TV](https://amodb.dev/ro/tv-series/).

## Erori

| HTTP | status_code | Când                                                                         |
| ---- | ----------- | ---------------------------------------------------------------------------- |
| 401  | 7           | Cheia lipsește sau este greșită.                                             |
| 402  | 36          | Perioada planului s-a încheiat.                                              |
| 405  | 37          | Ai apelat o metodă de scriere.                                               |
| 429  | 25          | Ai depășit cererile pe minut. Așteaptă numărul de secunde din `Retry-After`. |
| 500  | 11          | Un `page` în afara intervalului 1 până la 500.                               |
| 504  | 24          | Backend-ul nu a răspuns la timp. Reîncearcă o dată.                          |

Un set de filtre care nu se potrivește cu nimic nu este o eroare. Primești HTTP 200 cu un array `results` gol și `total_results` 0. Vezi [erori](https://amodb.dev/ro/errors/) și [limite de cereri](https://amodb.dev/ro/rate-limits/).

## Note practice

- Marginea ține în cache fiecare set distinct de filtre 30 de minute și îl partajează între chei. Cheia de cache folosește interogarea sortată, deci ordinea parametrilor tăi nu contează.
- O pagină are 20 de intrări, iar ultima pagină este 500, deci un set de filtre ajunge la 10,000 de intrări. Împarte pe ferestre de date ca să mergi mai adânc. Un filtru larg raportează `total_results` 20001, ceea ce este un plafon și nu o numărătoare reală.
- Asociază mereu `sort_by=vote_average.desc` cu `vote_count.gte`. Fără el, titlurile cu câteva voturi aglomerează vârful.
- ID-urile din filtre sunt numerice. Ia ID-urile de persoane de la [căutare](https://amodb.dev/ro/search/), iar ID-urile de gen și de furnizor de la [genuri și liste de referință](https://amodb.dev/ro/genres/).
- Pentru liste gata făcute, precum populare sau în cinematografe acum, vezi [tendințe și liste](https://amodb.dev/ro/trending-lists/).

## Întrebări și răspunsuri

### Cât de adânc pot parcurge rezultatele discover?

Parametrul page merge de la 1 la 500, cu 20 de intrări pe pagină, deci un set de filtre ajunge la cel mult 10,000 de intrări. Ca să citești mai mult, împarte interogarea în ferestre de date cu primary_release_date.gte și .lte.

### Cum combin genurile cu AND și OR?

În interiorul unui parametru, virgula înseamnă AND, iar bara verticală înseamnă OR. Bara se scrie %7C într-un URL brut. Parametrii separați se combină mereu cu AND.

### De ce sortarea după evaluare întoarce titluri obscure?

Un titlu cu o mână de voturi perfecte ajunge în vârful listei. Adaugă vote_count.gte, de exemplu 1000, ca doar titlurile cu suficiente voturi să fie ordonate după vote_average.

### Cât de proaspete sunt rezultatele discover?

Marginea ține în cache fiecare set distinct de filtre 30 de minute și îl partajează între chei. Fiecare apel se numără totuși la cererile tale pe minut, pentru că limita de cereri rulează înaintea cache-ului.

## Pagini conexe

- [API căutare](https://amodb.dev/ro/search/): API căutare cu căile și JSON-ul TMDB v3. Găsește filme, seriale, persoane, colecții, companii și cuvinte-cheie după text, cu filtre de an și paginare.
- [Genuri și liste de referință](https://amodb.dev/ro/genres/): API listă de genuri cu căi TMDB v3: ID-uri de gen pentru filme și TV cu nume traduse, plus liste de țări, limbi, meserii, clasificări și furnizori de vizionare.
- [Endpoint-uri pentru tendințe și liste](https://amodb.dev/ro/trending-lists/): API filme în tendințe cu căi TMDB v3: topuri pe zi și săptămână, plus now playing, populare, bine cotate și viitoare pentru filme și TV, în cache 30 de minute.
- [API cuvinte-cheie](https://amodb.dev/ro/keywords/): API cuvinte-cheie cu căi TMDB v3: listează etichetele unui film sau serial, caută un cuvânt-cheie, listează filmele lui și combină ID-urile cu with_keywords.
- [Companii și rețele](https://amodb.dev/ro/companies-networks/): Caută companii de producție și rețele TV cu căi TMDB v3. Citește numele, țara și logoul după ID, apoi filtrează discover după ID-ul unei companii sau rețele.
- [Limite de cereri](https://amodb.dev/ro/rate-limits/): amodb limitează fiecare cheie în cereri pe minut, în fereastră glisantă de 60 de secunde: 20, 40 sau 120. Citește antetele și tratează 429 cu Retry-After.

Actualizat: 2026-10-18. Source: https://amodb.dev/ro/discover/
