# חלופה ל-TheTVDB API

> TheTVDB מתמקד בטלוויזיה ומציע כמה סדרי פרקים, כמו סדר שידור, DVD וסדר מוחלט. amodb מכסה סדרות, סרטים ואנשים עם מפתח אחד וממפה מזהה TVDB למזהה משלו בקריאה אחת. הוא מציג את קבוצות הפרקים של סדרה אך לא את התוכן שלהן, ולכן מספור חלופי נשאר ב-TheTVDB.

## מה מתאים לפרויקט טלוויזיה

TheTVDB מתמקד בטלוויזיה ושומר כמה סדרי פרקים לסדרה, כולל סדר שידור, סדר DVD וסדר מוחלט, במודל של מפתח API. לפני שמתכננים מוצר מסחרי, את תנאי הרישוי ראו במסמכים שלהם. בחרו ב-amodb כשאתם רוצים סדרות, סרטים ואנשים ממפתח אחד, עם נתיבי TMDB v3 ו-14 שפות. בחרו ב-TheTVDB כשמספור חלופי מדויק הוא לב האפליקציה, כי amodb מציג את קבוצות הפרקים של סדרה אבל לא מגיש את מה שבתוכן.

## איך נתוני טלוויזיה מתמפים בין השניים

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

| צורך               | הגישה של TheTVDB              | קריאה ב-amodb                                 |
| ------------------ | ----------------------------- | --------------------------------------------- |
| סדרה אחת           | רשומת סדרה לפי מזהה TVDB      | `GET /3/tv/1396`, אחרי חיפוש `tvdb_id`        |
| רשימת עונות        | ראו במסמכים שלהם              | המערך `seasons` בפרטי הסדרה                   |
| עונה אחת עם פרקים  | ראו במסמכים שלהם              | `GET /3/tv/1396/season/1`                     |
| פרק אחד            | ראו במסמכים שלהם              | `GET /3/tv/1396/season/1/episode/1`           |
| אילו סדרים קיימים  | סדר שידור, סדר DVD וסדר מוחלט | `GET /3/tv/1396/episode_groups`               |
| פרקים בתוך סדר אחד | ראו במסמכים שלהם              | לא קיים, `/3/tv/episode_group/{id}` מחזיר 404 |
| הפרק הבא לשידור    | ראו במסמכים שלהם              | `next_episode_to_air` בפרטי הסדרה             |

שדות הפרק משתמשים בשמות של TMDB: `air_date`, `episode_number`, `season_number`, `runtime` ו-`still_path`. ה-`external_ids` של עונות ופרקים הם כולם null, ולכן אי אפשר לקרוא מ-amodb מזהה TVDB של עונה או פרק בודדים. במקום זאת בצעו התאמה לפי `season_number` ו-`episode_number`. פרטים בעמוד [עונות ופרקים](https://amodb.dev/he/tv-seasons-episodes/).

## מה רשימת קבוצות הפרקים מחזירה

קריאת הרשימה מראה אילו סדרים קיימים לסדרה. היא לא מחזירה את הפרקים שבתוכם.

| שדה             | משמעות                         |
| --------------- | ------------------------------ |
| `id`            | מזהה הקבוצה, מחרוזת            |
| `name`          | שם הסדר, כמו `DVD / PVOD`      |
| `description`   | טקסט מהמקור, לעיתים קרובות ריק |
| `type`          | מספר שמציין איזה סוג סדר זה    |
| `episode_count` | מספר הפרקים בסדר               |
| `group_count`   | מספר הבלוקים בסדר, למשל עונות  |
| `network`       | אובייקט עם הרשת, או null       |

זו תגובה אמיתית עבור Breaking Bad.

```json
{
  "id": 1396,
  "results": [
    {
      "description": "Seasons grouped as they appear on DVD, as well as paid video-on-demand services, such as Prime Video and YouTube.",
      "episode_count": 62,
      "group_count": 6,
      "id": "69f50757054263b7bc87e32a",
      "name": "DVD / PVOD",
      "network": null,
      "type": 3
    }
  ]
}
```

בחלק מהסדרות חוזר סדר שידור אחד ובאחרות כמה, ובחלק חוזר מערך `results` ריק. בדקו את הסדרות שחשובות לכם. מכיוון שהתוכן של קבוצה אינו קיים, אפליקציה שצריכה את מספר ה-DVD או את המספר המוחלט של כל פרק לא יכולה לקבל אותו מ-amodb.

## השוואת תכונות

| תכונה       | TheTVDB                                      | amodb                                                      |
| ----------- | -------------------------------------------- | ---------------------------------------------------------- |
| מודל תמחור  | מודל של מפתח API, את הרישוי ראו במסמכים שלהם | תקופות בתשלום מראש של 1 עד 24 חודשים                       |
| מסלול חינמי | ראו במסמכים שלהם                             | אין, וגם אין תקופת ניסיון                                  |
| אימות       | מפתח API, את התהליך ראו במסמכים שלהם         | `api_key` או כותרת Bearer                                  |
| פורמט תגובה | JSON, ראו במסמכים שלהם                       | JSON במבנה של TMDB v3                                      |
| שפות        | ראו במסמכים שלהם                             | 14 שפות ממשק                                               |
| סרטים       | ראו במסמכים שלהם                             | כן                                                         |
| סדרות       | כן, זה הדגש המרכזי שלו                       | כן, עם עונות ופרקים                                        |
| אנשים       | ראו במסמכים שלהם                             | כן                                                         |
| תמונות      | ראו במסמכים שלהם                             | `img.amodb.dev`, בלי מפתח                                  |
| דירוגים     | ראו במסמכים שלהם                             | IMDb ועוד ארבעה מקורות כשהם ידועים                         |
| מגבלת קצב   | ראו במסמכים שלהם                             | 20, 40 או 120 לדקה לכל מפתח                                |
| שימוש מסחרי | את הרישוי ראו במסמכים שלהם                   | מסלולים בתשלום, ראו [תמחור](https://amodb.dev/he/pricing/) |
| תאימות      | ה-API שלו                                    | קריאות של TMDB v3 ו-OMDb                                   |

## במה amodb שונה

- **מפתח אחד לכל הקטלוג.** סדרה, השחקנים שלה, הטריילרים שלה וסרט שחולק איתה שחקן משתמשים כולם באותה כתובת בסיס ובאותה מגבלה.
- **דירוגים לצד מדריך הפרקים.** `append_to_response=ratings` בפרטי הסדרה מוסיף את IMDb וציונים אחרים בקריאה אחת.
- **כותרות פשוטות לקביעת קצב.** `X-RateLimit-Remaining` ו-`X-RateLimit-Reset` אומרים למשימת סנכרון כמה בקשות נותרו בחלון של 60 שניות.
- **שמות מקוריים נשמרים.** סדרה שומרת את `original_name` בעוד `name` עוקב אחרי ה-`language` שלכם, מה שעוזר כשמציגים כותרת בשפת המקור.

## מתי TheTVDB מתאים יותר

- **הסדר הוא המוצר.** אם המשתמשים שלכם מתווכחים על סדר DVD מול סדר שידור מול סדר מוחלט, TheTVDB רואה בכך חלק מרכזי במודל שלו. amodb נותן שמות לסדרים של סדרה אבל לא מחזיר את הפרקים שלהם, ואילו קבוצות קיימות משתנה מסדרה לסדרה.
- **אינטגרציות קיימות.** אם התהליך שלכם כבר שומר מזהים של TheTVDB וקורא את הסדרים שלו, השאירו את החלק הזה והוסיפו את amodb עבור הנתונים הנוספים.
- **מיקוד בטלוויזיה.** אם אתם אף פעם לא מציגים סרטים או אנשים, למקור שנבנה סביב טלוויזיה יש פחות מה ללמוד.

## מעבר ל-amodb

מפו פעם אחת את מזהי ה-TVDB ששמרתם. אחר כך השתמשו במזהה amodb בכל קריאה. נקודת הקצה find פותרת מזהי סדרות בלבד. המערכים `tv_season_results` ו-`tv_episode_results` שלה ריקים תמיד, ולכן מפו עונות ופרקים לפי מספר.

```js
const key = process.env.AMODB_KEY;
const headers = { Authorization: `Bearer ${key}` };
const base = 'https://api.amodb.dev/3';

async function getJson(path) {
  const res = await fetch(`${base}${path}`, { headers });
  if (!res.ok) throw new Error(`${path} returned ${res.status}`);
  return res.json();
}

const found = await getJson('/find/81189?external_source=tvdb_id');
const show = found.tv_results[0];
console.log(show.id, show.name);

const groups = await getJson(`/tv/${show.id}/episode_groups`);
for (const g of groups.results) {
  console.log(g.name, g.type, g.episode_count);
}
```

הבקשה הראשונה מחזירה את Breaking Bad עם מזהה 1396. השנייה מציגה את הסדרים הקיימים לסדרה הזו, עם הגדלים שלהם. כדי להשוות מספור למה ששמור אצלכם היום, קראו את סדר השידור מ-`/tv/{id}/season/{n}` והשאירו כל סדר חלופי בצד של TheTVDB. בצעו את הבדיקה הזו על עשר הסדרות הנצפות ביותר אצלכם לפני שאתם מעבירים את השאר.

כל קריאה נספרת כבקשה אחת בחלון של 60 שניות, ותגובת 429 נושאת `Retry-After`. ראו [חיפוש לפי מזהה חיצוני](https://amodb.dev/he/find-by-external-id/) ו[מגבלות קצב](https://amodb.dev/he/rate-limits/).

## תמחור

amodb הוא בתשלום מראש וללא חידוש אוטומטי. בחרו 1, 3, 6, 12 או 24 חודשים ואחד משלושה מסלולים של 20, 40 או 120 בקשות לדקה. תקופות ארוכות יותר מקנות 10, 20, 30 או 40 אחוז הנחה, וכל מסלול מקבל את כל הנתונים. אין מסלול חינמי. הסכומים מופיעים בעמוד [תמחור](https://amodb.dev/he/pricing/).

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

### אפשר להמיר מזהי TVDB למזהי amodb?

כן. קראו ל-/3/find/81189 עם external_source=tvdb_id. המערך tv_results מכיל את הסדרה התואמת, ולכן Breaking Bad חוזרת עם מזהה 1396. שמרו את הזוג והשתמשו מכאן והלאה במזהה המספרי. גם הכיוון ההפוך עובד: /3/tv/1396/external_ids מחזיר tvdb_id.

### האם amodb תומך בסדר DVD ובסדר מוחלט של פרקים?

רק בחלקו. GET /3/tv/{id}/episode_groups מציג את הקבוצות של סדרה עם name, type, episode_count ו-group_count. התוכן של קבוצה אינו קיים, ו-/3/tv/episode_group/{id} מחזיר 404. אפשר לראות שיש סדר DVD, אבל אי אפשר לקרוא את המספור שלו.

### האם TheTVDB חינמי?

TheTVDB משתמש במודל של מפתח API, ותנאי הרישוי נקבעים על ידו. את הרישיון הנוכחי ואת העלויות ראו במסמכים שלהם. amodb הוא API בתשלום מראש ללא מסלול חינמי.

### האם מקבלים גם נתוני סרטים?

כן. סרטים, אנשים, תמונות, סרטונים ותרגומים נמצאים על אותו מפתח ואותה כתובת בסיס כמו הסדרות. כך אין צורך בספק שני אם האפליקציה שלכם מציגה את שניהם.

### איך מגלים איזה פרק יעלה לשידור הבא?

פרטי הסדרה כוללים next_episode_to_air ו-last_episode_to_air, כל אחד עם season_number, episode_number ו-air_date. הפרק הבא הוא null בסדרה שהסתיימה. הפרטים נשמרים במטמון בקצה 6 שעות, ולכן בדקו מחדש כמה פעמים ביום לכל היותר.

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

- [API עונות ופרקים של סדרות](https://amodb.dev/he/tv-seasons-episodes/): API עונות ופרקים של סדרות עם אותם נתיבים ו-JSON כמו TMDB v3. קראו עונה עם כל הפרקים שלה, או פרק אחד עם תאריך שידור, משך ותמונה מהפרק, עם crew ו-guest_stars.
- [חיפוש לפי מזהה חיצוני](https://amodb.dev/he/find-by-external-id/): חפשו סרט, סדרה או אדם לפי מזהה IMDb, TVDB, Wikidata או Kinopoisk עם נקודת הקצה find של TMDB v3, וקראו מזהים חיצוניים ועובדות Wikidata על כל כותר.
- [API למדריך פרקים](https://amodb.dev/he/episode-guide-api/): API מדריך פרקים עם נקודות הקצה של עונות ופרקים ב-TMDB v3: שמות, תקצירים, תאריכי שידור, משכים, תמונות סצנה ורשימות קבוצות פרקים לכל סדרה, ב-14 שפות.
- [API סדרות טלוויזיה](https://amodb.dev/he/tv-series/): API סדרות טלוויזיה עם אותם נתיבים ו-JSON כמו TMDB v3. קבלו סדרה לפי מזהה ב-GET /3/tv/{series_id} עם עונות, רשתות והפרק הבא, וגם סיווגי גיל וספקי צפייה.
- [מדריך למתחילים](https://amodb.dev/he/quickstart/): בצעו את הקריאה הראשונה ל-amodb: קבלו מפתח, בקשו פרטי סרט ב-curl, JavaScript, Python, PHP או Go, ואז טענו את הפוסטר מ-img.amodb.dev. פחות מ-2 דקות.
- [מגבלות קצב](https://amodb.dev/he/rate-limits/): amodb מגביל כל מפתח לפי בקשות לדקה בחלון נע של 60 שניות: 20, 40 או 120 בהתאם למסלול שלכם. קראו את כותרות מגבלת הקצב וטפלו ב-429 עם Retry-After.

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