# amodb מול TMDB

> amodb שומר את הנתיבים, פרמטרי השאילתה וה-JSON של TMDB v3 ברוב נקודות הקצה לקריאה, ולכן לקוח צריך רק כתובת בסיס ומפתח חדשים. בקשות כתיבה מחזירות 405, ופידים של שינויים, קרדיטים מצטברים ושליפות ביקורות אינם קיימים. שאר ההבדלים הם תנאים, 14 שפות, חמש הרחבות ומגבלות לכל מפתח.

## ההשוואה בקצרה

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

## התאמת נקודות קצה

כל שורה מציגה נתיב קריאה של TMDB v3 ואת אופן ההתנהגות שלו ב-`https://api.amodb.dev/3`.

| תחום                  | נתיב ב-TMDB v3                           | ב-amodb                                                                                                   |
| --------------------- | ---------------------------------------- | --------------------------------------------------------------------------------------------------------- |
| פרטי סרט              | `/movie/{movie_id}`                      | זהה, עם חמישה ערכים נוספים ל-`append_to_response`                                                         |
| פרטי סדרה             | `/tv/{series_id}`                        | זהה, אבל בלי השדה `type`, ו-`created_by` ריק ברוב הסדרות                                                  |
| עונות ופרקים          | `/tv/{series_id}/season/{season_number}` | אותו מבנה. תמונות, סרטונים ותרגומים של עונה ריקים, ו-`external_ids` של עונות ופרקים הם null               |
| אנשים                 | `/person/{person_id}`                    | זהה, עם `combined_credits`, `movie_credits`, `tv_credits`, `external_ids` ו-`images` (תמונות פרופיל בלבד) |
| קרדיטים               | `/movie/{movie_id}/credits`              | זהה. בפרקים `cast` ריק                                                                                    |
| חיפוש                 | `/search/multi`                          | זהה, נשמר במטמון 10 דקות                                                                                  |
| גילוי                 | `/discover/movie`                        | זהה, נשמר במטמון 30 דקות                                                                                  |
| טרנדים                | `/trending/{media_type}/{time_window}`   | זהה, נשמר במטמון 30 דקות                                                                                  |
| רשימות                | `/movie/popular`                         | זהה, `page` בין 1 ל-500                                                                                   |
| תמונות                | `/movie/{movie_id}/images`               | אותו מבנה, הקבצים נטענים מ-`img.amodb.dev`                                                                |
| סרטונים               | `/movie/{movie_id}/videos`               | זהה                                                                                                       |
| תרגומים               | `/movie/{movie_id}/translations`         | זהה, מוגשות 14 שפות                                                                                       |
| מילות מפתח            | `/movie/{movie_id}/keywords`             | זהה                                                                                                       |
| ביקורות               | `/movie/{movie_id}/reviews`              | מחזיר 200, אבל רק לכותרים מעטים יש ביקורות, ולכן רשימה ריקה היא דבר רגיל                                  |
| אוספים                | `/collection/{collection_id}`            | זהה, `parts` ממוין לפי תאריך יציאה                                                                        |
| חברות ורשתות          | `/company/{company_id}`                  | אותם מפתחות. `description` של חברה ריק ו-`parent_company` הוא null                                        |
| ז'אנרים               | `/genre/movie/list`                      | זהה                                                                                                       |
| הגדרות                | `/configuration`                         | אותם מפתחות, מארח התמונות הוא `img.amodb.dev`                                                             |
| חיפוש לפי מזהה חיצוני | `/find/{external_id}`                    | אותה נקודת קצה, בתוספת `kinopoisk_id`. `tv_episode_results` ו-`tv_season_results` תמיד ריקים              |
| קבוצות פרקים          | `/tv/{series_id}/episode_groups`         | מציג את הקבוצות של סדרה, בלי התוכן שלהן                                                                   |

## מה amodb לא מציע

לקריאות האלה של TMDB v3 אין מקבילה. נתיבים לא מוכרים מחזירים 404 עם `status_code` 34, ושיטות כתיבה מחזירות 405 עם `status_code` 37.

| קריאה ב-TMDB v3                                                                                           | התשובה של amodb       |
| --------------------------------------------------------------------------------------------------------- | --------------------- |
| `/movie/changes`, `/tv/changes`, `/person/changes` ו-`changes` תחת מזהה בודד                              | 404, `status_code` 34 |
| `aggregate_credits` תחת סדרה או עונה                                                                      | 404, `status_code` 34 |
| `/credit/{credit_id}` ו-`/review/{review_id}`                                                             | 404, `status_code` 34 |
| `/tv/episode_group/{id}`                                                                                  | 404, `status_code` 34 |
| `/person/{person_id}/translations`, `tagged_images` ו-`/person/latest`                                    | 404, `status_code` 34 |
| `images`, `translations` ו-`alternative_names` של אוספים, חברות ורשתות                                    | 404, `status_code` 34 |
| `/configuration/timezones`                                                                                | 404, `status_code` 34 |
| כל מה שתחת `account`, `authentication`, `guest_session` ו-`list`, וכל נתיב `/rating` או `/account_states` | 405, `status_code` 37 |

אם מוסיפים `aggregate_credits` או `changes` ל-`append_to_response`, amodb מתעלם מהשם בלי שגיאה, ולכן המפתח פשוט חסר בגוף התגובה.

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

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

## מה שונה בפירוט

- **תנאים.** TMDB מבקש שתקראו את התנאים שלו לשימוש מסחרי ולייחוס. amodb נמכר לפי תקופת תשלום מראש, בלי חידוש אוטומטי, בלי מסלול חינמי ובלי תקופת ניסיון.
- **שפות.** amodb מגיש en, ru, uk, be, zh, pt, bg, he, cs, ro, fr, pl, it ו-es. הוא מקבל תגיות של TMDB כמו `ru-RU` ו-`pt-BR`. גרמנית, יפנית וקוריאנית חוזרות ל-`en`, ואילו `original_title` שומר את הכותרת המקורית. את כיסוי השפות של TMDB ראו במסמכים שלהם. ראו [שפות](https://amodb.dev/he/languages/).
- **הרחבות.** `append_to_response` מקבל גם `moods`, `soundtracks`, `ratings`, `wikidata` ו-`showtimes`, ולכל אחד יש נתיב משלו תחת סרטים וסדרות.
- **מזהים חיצוניים.** `/3/find` פותר את `imdb_id`, `tvdb_id`, `wikidata_id`, `kinopoisk_id`, `facebook_id`, `twitter_id` ו-`instagram_id`. המקורות `freebase_mid`, `freebase_id`, `tvrage_id`, `tiktok_id` ו-`youtube_id` מתקבלים אבל מחזירים מערכים ריקים. `external_source` חסר או לא מוכר מחזיר 400 עם `status_code` 22.
- **ריק בכוונה.** תמונות, סרטונים ותרגומים של עונה ו-`description` של חברה ריקים תמיד. ביקורות ו-`created_by` בסדרה מלאים רק בכותרים מעטים. `external_ids` של עונות ופרקים הם כולם null.
- **כותרים למבוגרים.** `include_adult` מתעלמים ממנו. כותרים ואנשים למבוגרים לא מוגשים לעולם ומחזירים 404.
- **תמונות.** נתיב ה-CDN הוא `https://img.amodb.dev/t/p/{size}/{file}`. אין צורך במפתח, והקבצים נשמרים במטמון 30 יום.
- **מגבלות.** החלון הוא 60 שניות נעות לכל מפתח. הכותרות מציגות את הכמות שנותרה, וגם פגיעות מטמון נספרות, כי בדיקת המגבלה רצה קודם.
- **עצמאות.** הקטלוג מגיע ממקורות ציבוריים ופתוחים ומהעשרה משלנו. מבנה משותף לא מבטיח ערכים זהים בכל שדה של כל כותר.

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

- **שימוש חינמי מתאים.** אין צורך בתשלום, ו-amodb לא יכול להתחרות בזה.
- **כתיבה.** דירוג כותר, בניית רשימה והתחברויות של חשבון עובדים ב-TMDB. ב-amodb הם מחזירים 405.
- **פידים של שינויים.** TMDB מציג את המזהים שהשתנו. ל-amodb אין פיד כזה, ולכן מרעננים לפי לוח הזמנים שלכם.
- **קרדיטים מצטברים ושליפת קרדיט.** שניהם מחזירים 404 ב-amodb. השתמשו ב-`/credits` על הכותר.
- **צורכי שפה רחבים יותר.** אם הממשק שלכם צריך שפה מחוץ ל-14, בדקו קודם את TMDB.
- **אישור קיים.** צוות שכבר אישר את TMDB בבדיקה משפטית צריך לשקול את העלות של בדיקה שנייה.

## מעבר ל-amodb

השינוי הוא שורה אחת לכל בקשה.

```bash
# before: TMDB_BASE is your current TMDB v3 base URL
curl -s "$TMDB_BASE/movie/550?api_key=$TMDB_KEY"

# after
curl -s "https://api.amodb.dev/3/movie/550?api_key=$AMODB_KEY"
```

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

```js
async function topLevelKeys(base, key, path) {
  const res = await fetch(`${base}${path}?api_key=${key}`);
  if (!res.ok) throw new Error(`${path} returned ${res.status}`);
  return Object.keys(await res.json()).sort();
}

for (const path of ['/movie/550', '/tv/1396', '/person/31']) {
  const current = await topLevelKeys(process.env.TMDB_BASE, process.env.TMDB_KEY, path);
  const next = await topLevelKeys('https://api.amodb.dev/3', process.env.AMODB_KEY, path);
  const missing = current.filter((k) => !next.includes(k));
  console.log(path, missing.length ? `missing: ${missing.join(', ')}` : 'same keys');
}
```

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

1. בחרו מסלול בעמוד [תמחור](https://amodb.dev/he/pricing/), ואז צרו מפתח בלוח הבקרה של החשבון.
2. העבירו את כתובת הבסיס ואת המפתח להגדרות.
3. קראו את `images.secure_base_url` מ-`/3/configuration`.
4. חפשו בקוד קריאות כתיבה ואת הנתיבים מהטבלה של מה שאינו קיים. השאירו את הכתיבה ב-TMDB והחליפו את השאר.
5. הוסיפו טיפול ב-429 שממתין `Retry-After` שניות. ראו [מגבלות קצב](https://amodb.dev/he/rate-limits/) ו[שגיאות](https://amodb.dev/he/errors/).

## תמחור

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

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

### האם כל נקודות הקצה לקריאה של TMDB v3 זמינות ב-amodb?

לא. ברוב נתיבי הקריאה הנתיב, פרמטרי השאילתה ומבנה ה-JSON זהים, וטבלת ההתאמה בעמוד הזה מקבצת אותם לפי תחום. בקשות כתיבה מחזירות 405 עם status_code 37. פידים של שינויים, קרדיטים מצטברים, שליפת קרדיט או ביקורת בודדים, תוכן של קבוצות פרקים ותרגומי אנשים מחזירים 404 עם status_code 34.

### מה משתנה בקוד שלי כשעוברים מ-TMDB?

שלושה דברים: כתובת הבסיס הופכת ל-https://api.amodb.dev/3, המפתח הופך למפתח amodb שלכם, וכתובות התמונות משתמשות ב-img.amodb.dev. את בסיס התמונות קראו מנקודת הקצה של ההגדרות. הנתיבים נשארים זהים, מלבד הקריאות שמסומנות כלא קיימות.

### האם המזהים של סרטים וסדרות יישארו אותו דבר?

המזהים עוקבים אחרי המספור של TMDB. Fight Club הוא 550 ו-Breaking Bad הוא 1396 בשניהם. ערכים של שדות בודדים עדיין עשויים להיות שונים בחלק מהכותרים, ולכן השוו מדגם מהקטלוג שלכם לפני המעבר.

### אפשר להשתמש בשני השירותים יחד?

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

### איזה שירות זול יותר?

TMDB מציע API חינמי לשימוש מתאים לפי התנאים שלו, ולכן הוא לא עולה כלום כשעומדים בתנאים. amodb הוא בתשלום מהבקשה הראשונה, עם תקופות תשלום מראש של 1 עד 24 חודשים והנחה של עד 40 אחוז.

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

- [חלופה ל-TMDB API](https://amodb.dev/he/tmdb-api-alternative/): מחפשים חלופה ל-TMDB API? בדקו תנאים, מגבלות, שפות ודירוגים, ועברו ל-API בתשלום ששומר את רוב נתיבי הקריאה וה-JSON של TMDB v3. ראו את הפערים לפני המעבר.
- [API למאגר סרטים לקטלוג משלכם](https://amodb.dev/he/movie-database-api/): API למאגר סרטים להעתק מקומי משלכם: סרטים, אנשים, חברות, אוספים, מילות מפתח וז'אנרים עם מזהים מקושרים, חלונות תאריכי discover וחיפושי מזהים חיצוניים.
- [חיפוש לפי מזהה חיצוני](https://amodb.dev/he/find-by-external-id/): חפשו סרט, סדרה או אדם לפי מזהה IMDb, TVDB, Wikidata או Kinopoisk עם נקודת הקצה find של TMDB v3, וקראו מזהים חיצוניים ועובדות Wikidata על כל כותר.
- [אימות](https://amodb.dev/he/authentication/): איך שולחים את מפתח amodb: api_key בשאילתה, כותרת Authorization Bearer או apikey בקריאות OMDb. פורמט המפתח, שמירה, החלפה ושגיאות 401 שכדאי להכיר.
- [מגבלות קצב](https://amodb.dev/he/rate-limits/): amodb מגביל כל מפתח לפי בקשות לדקה בחלון נע של 60 שניות: 20, 40 או 120 בהתאם למסלול שלכם. קראו את כותרות מגבלת הקצב וטפלו ב-429 עם Retry-After.
- [תמחור](https://amodb.dev/he/pricing/): המסלולים של amodb נבדלים רק בבקשות לדקה: 20, 40 או 120. כל מסלול כולל את כל הנתונים התואמים ל-TMDB v3 ול-OMDb. תשלום מראש, בלי חידוש ובלי ניסיון.

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