본문 바로가기

프로그래밍/영화 TMDB API

영화 정보 앱 만들기 - TMDB API 사용법, Configuration

반응형

TMDB API 활용 예제 앱입니다.

https://play.google.com/store/apps/details?id=com.enigmah2k.movieinfo

 

영화정보 - Google Play 앱

영화 또는 TV 시리즈 정보를 검색할 수 있습니다. TMDB API를 사용하여 만들었습니다. 한국에 소개되지 않은 컨텐츠를 찾을 수 있습니다.

play.google.com

 

TMDB API - Configuration

시스템에 설정되어 있는 정보를 가져옵니다.

이미지 사이즈, 국가, 직업, 언어, 번역, 시간대 등 정보를 가져옵니다.

조회도 가능하지만 Example 에 나와 있는 결과가 전부입니다.

자주 변경되는 값이 아니고 거의 변화가 없으므로 따로 저장하는 것이 좋을 것 같습니다.

 

아래 링크가 Configuration 관련 API 상세입니다.

https://developers.themoviedb.org/3/configuration/get-api-configuration

 

각 API에 대해 알아보겠습니다.

 

=============================================

< API 설명 >

 

1. Get API Configuration

이미지 경로나 사이즈 정보를 가져옵니다.

 

아래와 같이 호출하면 상세정보를 얻을 수 있습니다.

https://api.themoviedb.org/3/configuration?api_key=<<api_key>>

{"images":{"base_url":"http://image.tmdb.org/t/p/","secure_base_url":"https://image.tmdb.org/t/p/","backdrop_sizes":["w300","w780","w1280","original"],"logo_sizes":["w45","w92","w154","w185","w300","w500","original"],"poster_sizes":["w92","w154","w185","w342","w500","w780","original"],"profile_sizes":["w45","w185","h632","original"],"still_sizes":["w92","w185","w300","original"]},"change_keys":["adult","air_date","also_known_as","alternative_titles","biography","birthday","budget","cast","certifications","character_names","created_by","crew","deathday","episode","episode_number","episode_run_time","freebase_id","freebase_mid","general","genres","guest_stars","homepage","images","imdb_id","languages","name","network","origin_country","original_name","original_title","overview","parts","place_of_birth","plot_keywords","production_code","production_companies","production_countries","releases","revenue","runtime","season","season_number","season_regular","spoken_languages","status","tagline","title","translations","tvdb_id","tvrage_id","type","video","videos"]}

 

아래는 응답 결과 입니다.

{
  "images": {
    "base_url": "http://image.tmdb.org/t/p/",
    "secure_base_url": "https://image.tmdb.org/t/p/",
    "backdrop_sizes": [
      "w300",
      "w780",
      "w1280",
      "original"
    ],
    "logo_sizes": [
      "w45",
      "w92",
      "w154",
      "w185",
      "w300",
      "w500",
      "original"
    ],
...

 

 

2. Get Countries

국가 목록 (ISO 3166) 을 가져옵니다.

 

아래와 같이 호출하면 국가목록을 얻을 수 있습니다.

https://api.themoviedb.org/3/configuration/countries?api_key=<<api_key>>

[{"iso_3166_1":"AD","english_name":"Andorra"},{"iso_3166_1":"AE","english_name":"United Arab Emirates"},{"iso_3166_1":"AF","english_name":"Afghanistan"},{"iso_3166_1":"AG","english_name":"Antigua and Barbuda"},{"iso_3166_1":"AI","english_name":"Anguilla"},{"iso_3166_1":"AL","english_name":"Albania"},{"iso_3166_1":"AM","english_name":"Armenia"},{"iso_3166_1":"AN","english_name":"Netherlands Antilles"},{"iso_3166_1":"AO","english_name":"Angola"},{"iso_3166_1":"AQ","english_name":"Antarctica"},{"iso_3166_1":"AR","english_name":"Argentina"},{"iso_3166_1":"AS","english_name":"American Samoa"},{"iso_3166_1":"AT","english_name":"Austria"},{"iso_3166_1":"AU","english_name":"Australia"},{"iso_3166_1":"AW","english_name":"Aruba"},
...

 

아래는 응답 결과 입니다.

[
  {
    "iso_3166_1": "AD",
    "english_name": "Andorra"
  },
  {
    "iso_3166_1": "AE",
    "english_name": "United Arab Emirates"
  },
...

 

 

3. Get Jobs

직업 및 부서 목록을 얻을 수 있습니다.

 

아래와 같이 호출하면 직업 및 부서 목록을 얻을 수 있습니다.

https://api.themoviedb.org/3/configuration/jobs?api_key=<<api_key>>

[{"department":"Art","jobs":["Art Direction","Production Design","Set Designer","Interior Designer","Prop Designer","Assistant Set Designer","Dressing Prop","Head Designer","Gun Wrangler","Additional Set Dresser","Assistant Decorator","Assistant Production Design",
...

 

아래는 응답 결과 입니다.

[
  {
    "department": "Crew",
    "jobs": [
      "Special Effects",
      "Post Production Supervisor",
      "Second Unit",
      "Choreographer",
      "Stunts",
...

 

 

4. Get Languages

언어 목록 (ISO 639)을 가져옵니다.

 

아래와 같이 호출하면 언어 목록을 얻을 수 있습니다.

https://api.themoviedb.org/3/configuration/languages?api_key=<<api_key>>

 

[{"iso_639_1":"an","english_name":"Aragonese","name":""},{"iso_639_1":"ak","english_name":"Akan","name":""},{"iso_639_1":"cr","english_name":"Cree","name":""},{"iso_639_1":"az","english_name":"Azerbaijani","name":"Azərbaycan"},{"iso_639_1":"cs","english_name":"Czech","name":"Český"},{"iso_639_1":"aa","english_name":"Afar","name":""},{"iso_639_1":"br","english_name":"Breton","name":""},{"iso_639_1":"af","english_name":"Afrikaans","name":"Afrikaans"},
...

 

아래는 응답 결과 입니다.

[
  {
    "iso_639_1": "xx",
    "english_name": "No Language",
    "name": "No Language"
  },
  {
    "iso_639_1": "aa",
    "english_name": "Afar",
    "name": ""
  },
...

 

 

5. Get Primary Translatrions

번역이 지원되는 목록을 가져옵니다.

 

아래와 같이 호출하면 번역 지원 목록을 얻을 수 있습니다.

https://api.themoviedb.org/3/configuration/primary_translations?api_key=<<api_key>>

["ar-AE","ar-SA","be-BY","bg-BG","bn-BD","ca-ES","ch-GU","cn-CN","cs-CZ","da-DK","de-AT","de-CH","de-DE","el-GR","en-AU","en-CA","en-GB","en-IE","en-NZ","en-US","eo-EO","es-ES","es-MX","et-EE","eu-ES","fa-IR","fi-FI","fr-CA","fr-FR","gl-ES","he-IL","hi-IN","hu-HU","id-ID","it-IT","ja-JP","ka-GE","kk-KZ","kn-IN","ko-KR","lt-LT","lv-LV","ml-IN","ms-MY","ms-SG","nb-NO","nl-NL","no-NO","pl-PL","pt-BR","pt-PT","ro-RO","ru-RU","si-LK","sk-SK","sl-SI","sq-AL","sr-RS","sv-SE","ta-IN","te-IN","th-TH","tl-PH","tr-TR","uk-UA","vi-VN","zh-CN","zh-HK","zh-TW","zu-ZA"]

 

아래는 응답 결과 입니다.

[
  "ar-AE",
  "ar-SA",
  "bg-BG",
  "bn-BD",
  "ca-ES",
  "ch-GU",
  "cs-CZ",
...

 

 

6. Get Timezones

시간대 목록을 가져옵니다.

 

아래와 같이 호출하면 시간대 목록을 얻을 수 있습니다.

https://api.themoviedb.org/3/configuration/timezones?api_key=<<api_key>>

[{"iso_3166_1":"AD","zones":["Europe/Andorra"]},{"iso_3166_1":"AE","zones":["Asia/Dubai"]},{"iso_3166_1":"AF","zones":["Asia/Kabul"]},{"iso_3166_1":"AG","zones":["America/Port_of_Spain"]},{"iso_3166_1":"AI","zones":["America/Port_of_Spain"]},{"iso_3166_1":"AL","zones":["Europe/Tirane"]},{"iso_3166_1":"AM","zones":["Asia/Yerevan"]},{"iso_3166_1":"AO","zones":["Africa/Lagos"]},{"iso_3166_1":"AQ","zones":
...

 

아래는 응답 결과 입니다.

[
  {
    "iso_3166_1": "AD",
    "zones": [
      "Europe/Andorra"
    ]
  },
  {
    "iso_3166_1": "AE",
    "zones": [
      "Asia/Dubai"
    ]
  },
...

 

 

 

반응형