# Ghid rapid

> Cumpără un plan, creează o cheie în cont și trimite-o cu prima cerere către https://api.amodb.dev/3/movie/550. Răspunsul este JSON-ul TMDB v3 pe care îl știi deja. Apoi construiește un URL de poster pe img.amodb.dev din poster_path. Dacă folosești deja TMDB sau OMDb, schimbi doar URL-ul de bază și cheia.

## 1. Ia o cheie

Alege un plan pe [pagina de prețuri](https://amodb.dev/ro/pricing/) și plătește o perioadă. Apoi deschide **Cont**, apoi **Chei API**, și creează o cheie. O cheie are 32 de caractere hex minuscule, aceeași formă ca o cheie TMDB v3.

Cheia completă se afișează o singură dată. Stochează-o într-o variabilă de mediu numită `AMODB_KEY`, ca exemplele de pe această pagină să funcționeze așa cum sunt scrise.

```bash
export AMODB_KEY="0123456789abcdef0123456789abcdef"
```

## 2. Cere detaliile unui film

Apelează `GET /3/movie/{movie_id}`. Trimite cheia ca token Bearer sau ca `api_key` în interogare. Ambele sunt acceptate pe fiecare endpoint.

```bash
curl "https://api.amodb.dev/3/movie/550?language=en-US" \
  -H "Authorization: Bearer $AMODB_KEY"
```

```js
const res = await fetch("https://api.amodb.dev/3/movie/550?language=en-US", {
  headers: { Authorization: `Bearer ${process.env.AMODB_KEY}` },
});
if (!res.ok) throw new Error(`amodb ${res.status}`);
const movie = await res.json();
console.log(movie.title, movie.runtime);
```

```python
import os
import requests

res = requests.get(
    "https://api.amodb.dev/3/movie/550",
    params={"language": "en-US"},
    headers={"Authorization": f"Bearer {os.environ['AMODB_KEY']}"},
    timeout=10,
)
res.raise_for_status()
movie = res.json()
print(movie["title"], movie["runtime"])
```

```php
<?php
$ch = curl_init("https://api.amodb.dev/3/movie/550?language=en-US");
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => ["Authorization: Bearer " . getenv("AMODB_KEY")],
]);
$movie = json_decode(curl_exec($ch), true);
echo $movie["title"] . " " . $movie["runtime"];
```

```go
package main

import (
	"encoding/json"
	"fmt"
	"log"
	"net/http"
	"os"
)

func main() {
	req, _ := http.NewRequest("GET", "https://api.amodb.dev/3/movie/550?language=en-US", nil)
	req.Header.Set("Authorization", "Bearer "+os.Getenv("AMODB_KEY"))

	res, err := http.DefaultClient.Do(req)
	if err != nil {
		log.Fatal(err)
	}
	defer res.Body.Close()

	var movie struct {
		Title   string `json:"title"`
		Runtime int    `json:"runtime"`
	}
	json.NewDecoder(res.Body).Decode(&movie)
	fmt.Println(movie.Title, movie.Runtime)
}
```

Un răspuns 200 conține câmpurile TMDB v3. O parte scurtă din el:

```json
{
  "id": 550,
  "imdb_id": "tt0137523",
  "title": "Fight Club",
  "release_date": "1999-10-15",
  "runtime": 139,
  "poster_path": "/pB8BM7pdSp6B6Ih7QZ4DrQ3PmJK.jpg"
}
```

## 3. Încarcă posterul

Îmbină URL-ul de bază al imaginilor, o dimensiune și `poster_path`. Imaginile nu cer cheie și rămân în cache 30 de zile.

```bash
curl -o poster.jpg "https://img.amodb.dev/t/p/w500/pB8BM7pdSp6B6Ih7QZ4DrQ3PmJK.jpg"
```

```js
const poster = `https://img.amodb.dev/t/p/w500${movie.poster_path}`;
```

```python
poster = f"https://img.amodb.dev/t/p/w500{movie['poster_path']}"
```

Vezi [imaginile](https://amodb.dev/ro/images/) pentru toate dimensiunile și pentru construirea URL-urilor din `/3/configuration`.

## 4. Mută un client existent

Pentru un client TMDB v3, schimbă URL-ul de bază din `https://api.themoviedb.org/3` în `https://api.amodb.dev/3` și folosește cheia amodb. Pentru un client OMDb, schimbă-l în `https://api.amodb.dev/omdb/` și trimite aceeași cheie ca `apikey`.

Metodele TMDB de scriere pentru cont, sesiune, evaluări și liste nu sunt oferite. Ele întorc HTTP 405 cu `status_code` 37, așa că un client doar pentru citire nu necesită alte modificări.

## 5. Tratează limitele și erorile

Fiecare cheie are o rată pe minut stabilită de plan. Citește `X-RateLimit-Remaining` și așteaptă `Retry-After` secunde după un 429. Erorile folosesc corpul TMDB, cu `success`, `status_code` și `status_message`.

Citește [limitele de cereri](https://amodb.dev/ro/rate-limits/) și [erorile](https://amodb.dev/ro/errors/) înainte să treci în producție.

## Întrebări și răspunsuri

### Unde îmi găsesc cheia?

Autentifică-te pe amodb.dev, deschide Cont, apoi Chei API și creează o cheie. Cheia completă se afișează o singură dată, așa că copiaz-o imediat în depozitul tău de secrete.

### Pot folosi cheia într-o aplicație de browser?

Doar în spatele propriului server. O cheie în cod din partea clientului este publică, iar oricine o copiază îți consumă rata de cereri.

## Pagini conexe

- [Autentificare](https://amodb.dev/ro/authentication/): Cum trimiți cheia amodb: api_key în interogare, antetul Authorization Bearer sau apikey pentru apelurile OMDb. Format, stocare, rotire și erorile 401.
- [Imagini](https://amodb.dev/ro/images/): Încarcă postere, imagini de fundal și profiluri de pe img.amodb.dev cu căile și dimensiunile TMDB, de la w92 la original. Fără cheie, cache 30 de zile.
- [Erori](https://amodb.dev/ro/errors/): Fiecare eroare amodb, cu statusul HTTP, status_code TMDB și mesajul, plus forma erorii OMDb. Ce înseamnă fiecare și ce ar trebui să facă clientul tău.
- [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/quickstart/
