# API פרטי אדם

> נקודת הקצה של אדם מחזירה שחקן, במאי או איש צוות לפי מזהה ב-GET /3/person/{person_id}. ה-JSON זהה ל-TMDB v3: ביוגרפיה, תאריך לידה, מקום לידה, תמונת פרופיל ומחלקה. נקודות קצה נלוות מחזירות קרדיטים של סרטים, סדרות ומשולבים, מזהים חיצוניים, תמונות פרופיל והרשימה הפופולרית.

## נקודת קצה

`GET /3/person/{person_id}`

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

תגובה:

```json
{
  "adult": false,
  "also_known_as": [
    "Thomas Jeffrey Hanks"
  ],
  "biography": "Thomas Jeffrey Hanks (born July 9, 1956) is an American actor and filmmaker. Known for both his comedic and dramatic roles, Hanks is one of the most popular and recognizable film stars worldwide, and is widely regarded as an American cultur...",
  "birthday": "1956-07-09",
  "deathday": null,
  "gender": 2,
  "homepage": null,
  "id": 31,
  "imdb_id": "nm0000158",
  "known_for_department": "Acting",
  "name": "Tom Hanks",
  "place_of_birth": "Concord, California, USA",
  "popularity": 12.98,
  "profile_path": "/oFvZoKI6lvU03n4YoNGAll9rkas.jpg"
}
```

## קבלת פרטי אדם

`GET /3/person/{person_id}` מחזיר את רשומת הליבה של אדם אחד: שם, ביוגרפיה, תאריך לידה, מקום לידה, מחלקה, תמונת פרופיל ומזהה IMDb. המזהה הוא מזהה האדם המספרי של TMDB, ולכן Tom Hanks נשאר `31` ו-Leonardo DiCaprio נשאר `6193`. אנשים שעובדים מול המצלמה ומאחוריה חולקים מרחב מזהים אחד.

הדוגמה קוראת את Tom Hanks ומצרפת את הקרדיטים המשולבים שלו, ואז מדפיסה את השם, תאריך הלידה, המחלקה הראשית וכמה קרדיטי משחק יש לו.

```bash
curl -sSf "https://api.amodb.dev/3/person/31?language=en-US&append_to_response=combined_credits" \
  -H "Authorization: Bearer $AMODB_KEY"
```

```js
const url = 'https://api.amodb.dev/3/person/31?language=en-US&append_to_response=combined_credits';
const res = await fetch(url, { headers: { Authorization: `Bearer ${process.env.AMODB_KEY}` } });
if (!res.ok) throw new Error(`amodb returned ${res.status}`);
const person = await res.json();
console.log(person.name, person.birthday, person.known_for_department, person.combined_credits.cast.length);
```

```python
import os
import requests

r = requests.get(
    "https://api.amodb.dev/3/person/31",
    params={"language": "en-US", "append_to_response": "combined_credits"},
    headers={"Authorization": f"Bearer {os.environ['AMODB_KEY']}"},
    timeout=10,
)
r.raise_for_status()
person = r.json()
print(person["name"], person["birthday"], person["known_for_department"], len(person["combined_credits"]["cast"]))
```

```php
<?php
$url = 'https://api.amodb.dev/3/person/31?language=en-US&append_to_response=combined_credits';
$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");
}
$person = json_decode($body, true);
echo $person['name'], ' ', $person['birthday'], ' ', count($person['combined_credits']['cast']), PHP_EOL;
```

```go
package main

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

type Person struct {
	Name         string `json:"name"`
	Birthday     string `json:"birthday"`
	Department   string `json:"known_for_department"`
	PlaceOfBirth string `json:"place_of_birth"`
}

func main() {
	req, _ := http.NewRequest("GET", "https://api.amodb.dev/3/person/31?language=en-US", 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 Person
	if err := json.NewDecoder(res.Body).Decode(&p); err != nil {
		panic(err)
	}
	fmt.Println(p.Name, p.Birthday, p.Department, p.PlaceOfBirth)
}
```

### פרמטרים

| פרמטר                | מיקום  | חובה       | תיאור                                                                                                                          |
| -------------------- | ------ | ---------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `person_id`          | נתיב   | כן         | מזהה אדם מספרי, למשל `31`.                                                                                                     |
| `api_key`            | שאילתה | אחד משניים | המפתח שלכם. השתמשו בו או בכותרת `Authorization: Bearer`.                                                                       |
| `language`           | שאילתה | לא         | תגית TMDB כמו `en-US` או `ru-RU`. הביוגרפיה מוחזרת בשפה הזו כשיש תרגום.                                                        |
| `append_to_response` | שאילתה | לא         | רשימה מופרדת בפסיקים: `movie_credits`, `tv_credits`, `combined_credits`, `external_ids`, `images`. שמות לא מוכרים מתעלמים מהם. |

### שדות התגובה

| שדה                    | סוג            | הערות                                                                                        |
| ---------------------- | -------------- | -------------------------------------------------------------------------------------------- |
| `id`                   | integer        | מזהה האדם.                                                                                   |
| `name`                 | string         | שם להצגה, ב-`language` המבוקש כשיש תרגום.                                                    |
| `also_known_as`        | array          | שמות וכתיבים חלופיים.                                                                        |
| `biography`            | string         | טקסט מתורגם, ריק כשאין תרגום.                                                                |
| `birthday`, `deathday` | string או null | `YYYY-MM-DD`. הערך `deathday` הוא null לאנשים חיים.                                          |
| `place_of_birth`       | string או null | טקסט חופשי.                                                                                  |
| `gender`               | integer        | 0 לא צוין, 1 נקבה, 2 זכר, 3 לא בינארי.                                                       |
| `known_for_department` | string         | התפקיד הראשי, למשל `Acting` או `Directing`.                                                  |
| `imdb_id`              | string או null | מזהה אדם ב-IMDb כמו `nm0000158`.                                                             |
| `homepage`             | string או null | אתר רשמי.                                                                                    |
| `profile_path`         | string או null | מצרפים ל-`https://img.amodb.dev/t/p/{size}`. ראו [תמונות](https://amodb.dev/he/images-api/). |
| `popularity`           | number         | ציון יחסי שמשמש את הרשימה הפופולרית.                                                         |
| `adult`                | boolean        | תמיד `false`. אנשי תוכן למבוגרים לא מוגשים לעולם.                                            |

### תגובה לדוגמה

`GET /3/person/31?language=en-US`, עם ביוגרפיה מקוצרת:

```json
{
  "adult": false,
  "also_known_as": [
    "Thomas Jeffrey Hanks"
  ],
  "biography": "Thomas Jeffrey Hanks (born July 9, 1956) is an American actor and filmmaker. Known for both his comedic and dramatic roles, Hanks is one of the most popular...",
  "birthday": "1956-07-09",
  "deathday": null,
  "gender": 2,
  "homepage": null,
  "id": 31,
  "imdb_id": "nm0000158",
  "known_for_department": "Acting",
  "name": "Tom Hanks",
  "place_of_birth": "Concord, California, USA",
  "popularity": 12.98,
  "profile_path": "/oFvZoKI6lvU03n4YoNGAll9rkas.jpg"
}
```

## נקודות קצה לפילמוגרפיה

שלוש נקודות קצה מציגות את מה שאדם עבד עליו. כולן מקבלות `language` ומחזירות את המפתחות `id`, `cast` ו-`crew`. כשמצרפים אותן עם `append_to_response`, המפתח `id` מושמט.

| שיטה ונתיב                                 | מה מוחזר                                                                 | פרמטרים נוספים |
| ------------------------------------------ | ------------------------------------------------------------------------ | -------------- |
| `GET /person/{person_id}/movie_credits`    | סרטים, עם `character` ו-`order` ב-`cast` ו-`department` ו-`job` ב-`crew` | אין            |
| `GET /person/{person_id}/tv_credits`       | סדרות, עם `character` ב-`cast` ו-`department` ו-`job` ב-`crew`           | אין            |
| `GET /person/{person_id}/combined_credits` | סרטים וסדרות יחד, כל אחד עם `media_type` שהוא `movie` או `tv`            | אין            |

פריטי סרטים נושאים `title` ו-`release_date`. פריטי סדרות נושאים `name` ו-`first_air_date`, ולפריטי שחקנים בסדרות יש גם מפתח `episode_count` שערכו `0` בנתונים הנוכחיים. הפריטים נושאים גם `credit_id`, `genre_ids`, `poster_path`, `vote_average` ושאר שדות הרשימה. הקטע שלמטה ממיין קרדיטים משולבים לפי תאריך ומדפיס את חמשת החדשים ביותר.

```js
const credits = person.combined_credits;
const date = (c) => c.release_date || c.first_air_date || '';
const latest = credits.cast.filter((c) => date(c)).sort((a, b) => date(b).localeCompare(date(a))).slice(0, 5);
for (const c of latest) console.log(date(c), c.media_type, c.title || c.name, 'as', c.character);
```

## רשימות ותמונות

| שיטה ונתיב                             | מה מוחזר                                                                                         | פרמטרים נוספים     |
| -------------------------------------- | ------------------------------------------------------------------------------------------------ | ------------------ |
| `GET /person/popular`                  | רשימה מדורגת של אנשים פופולריים עם כותרי `known_for`                                             | `language`, `page` |
| `GET /person/{person_id}/images`       | תמונות פרופיל במערך `profiles`                                                                   | אין                |
| `GET /person/{person_id}/external_ids` | `imdb_id`, `wikidata_id`, `facebook_id`, `instagram_id`, `tiktok_id`, `twitter_id`, `youtube_id` | אין                |

פריטים פופולריים מחזיקים `id`, `name`, `original_name`, `known_for_department`, `gender`, `profile_path`, `popularity` ומערך `known_for`. העמודים נעים בין 1 ל-500. תמונות פרופיל מכוסות בעמוד [תמונות](https://amodb.dev/he/images-api/), ומזהים חיצוניים בעמוד [חיפוש לפי מזהה חיצוני](https://amodb.dev/he/find-by-external-id/).

amodb לא מציע תרגומי אנשים, את רשומת האדם החדשה ביותר, תמונות מתויגות או שינויים. בקשו את הביוגרפיה בשפה שאתם צריכים עם הפרמטר `language` במקום.

## שגיאות

| HTTP | status_code | מתי                                                                 |
| ---- | ----------- | ------------------------------------------------------------------- |
| 401  | 7           | המפתח חסר או שגוי.                                                  |
| 402  | 36          | תקופת המסלול הסתיימה.                                               |
| 404  | 34          | אין אדם עם המזהה הזה, אדם מתחום התוכן למבוגרים, או נתיב שאינו מוצע. |
| 405  | 37          | קראתם לשיטת כתיבה.                                                  |
| 429  | 25          | מעל הבקשות שלכם לדקה. המתינו `Retry-After` שניות.                   |

הרשימה המלאה בעמוד [שגיאות](https://amodb.dev/he/errors/), והחלונות לכל מסלול בעמוד [מגבלות קצב](https://amodb.dev/he/rate-limits/).

## הערות מעשיות

- פרטי אדם ורשימות קרדיטים נשמרים במטמון 6 שעות. הרשימה הפופולרית נשמרת 30 דקות והעמודים נעים בין 1 ל-500.
- הוסיפו `combined_credits` דרך `append_to_response` במקום לבצע קריאה שנייה. שתי הדרכים מחזירות אותם נתונים.
- ב-`movie_credits` לכל פריט `cast` יש ערך `order`, מיקום האדם בקרדיטים של הסרט הזה. לפריטי סדרות אין `order`, ולכן מיינו אותם לפי `first_air_date`.
- השתמשו ב-`known_for_department` כדי להחליט איזו רשימה להציג קודם: `cast` לשחקנים, `crew` לבמאים ולתסריטאים.
- חפשו אדם לפי שם בעמוד [חיפוש](https://amodb.dev/he/search/), ואז השתמשו כאן במזהה שלו.

## שאלות ותשובות

### איך מקבלים את הפילמוגרפיה המלאה של שחקן?

קראו ל-GET /3/person/{person_id}/combined_credits לסרטים ולסדרות בתגובה אחת, או הוסיפו append_to_response=combined_credits לבקשת האדם. בכל פריט יש media_type כדי שאפשר יהיה להפריד סרטים מסדרות.

### מה משמעות ערכי gender?

0 פירושו לא צוין, 1 נקבה, 2 זכר ו-3 לא בינארי. ברשומות רבות נשאר 0, ולכן אל תתייחסו לזה כאל שגיאה ואל תבנו לוגיקה שתלויה בו.

### באיזה גודל להשתמש לתמונות פרופיל?

השתמשו ב-w185 לרשימות וב-h632 לעמודי פרטים, שניהם ב-img.amodb.dev. נתיבי פרופיל יכולים להיות null, ולכן החזיקו תמונת מחדל מוכנה לאנשים בלי תמונה.

### אפשר לחפש אנשים לפי שם?

כן, GET /3/search/person עם פרמטר query. הוא מוסבר בעמוד החיפוש, והמזהה שהוא מחזיר הוא ה-person_id שכל נקודות הקצה כאן משתמשות בו.

## עמודים קשורים

- [API קרדיטים](https://amodb.dev/he/credits/): API קרדיטים עם אותם נתיבים ו-JSON כמו TMDB v3. קבלו שחקנים וצוות של סרטים, סדרות, עונות ופרקים, עם credit_id, order, department ו-job ועם guest_stars בפרקים.
- [API לשחקנים](https://amodb.dev/he/actor-api/): API לשחקנים על נקודות הקצה של אנשים ב-TMDB v3. קבלו ביוגרפיה, פילמוגרפיה מלאה דרך combined_credits, תמונות פרופיל ורשימה פופולרית, ב-14 שפות.
- [API חיפוש](https://amodb.dev/he/search/): API חיפוש עם אותם נתיבים ו-JSON כמו TMDB v3. מצאו סרטים, סדרות, אנשים, אוספים, חברות ומילות מפתח לפי טקסט, עם סינון לפי שנה ועימוד של 20 תוצאות בעמוד.
- [API תמונות ושרת תמונות](https://amodb.dev/he/images-api/): API תמונות סרטים עם נתיבי TMDB v3: הציגו פוסטרים, תמונות רקע, לוגואים ותמונות סצנה לכל כותר, וטענו אותם מ-img.amodb.dev ב-10 גדלים בלי מפתח.
- [חיפוש לפי מזהה חיצוני](https://amodb.dev/he/find-by-external-id/): חפשו סרט, סדרה או אדם לפי מזהה IMDb, TVDB, Wikidata או Kinopoisk עם נקודת הקצה find של TMDB v3, וקראו מזהים חיצוניים ועובדות Wikidata על כל כותר.
- [מדריך למתחילים](https://amodb.dev/he/quickstart/): בצעו את הקריאה הראשונה ל-amodb: קבלו מפתח, בקשו פרטי סרט ב-curl, JavaScript, Python, PHP או Go, ואז טענו את הפוסטר מ-img.amodb.dev. פחות מ-2 דקות.

עודכן: 2026-10-18. Source: https://amodb.dev/he/people/
